classloader.getSystemResourceAsStream возвращает ноль - PullRequest
6 голосов
/ 21 апреля 2009

Я пытаюсь загрузить файл свойств, не используя фактический путь к файлу. Я уже сделал это на некоторых других простых приложениях, используя:

InputStream inputStream = ClassLoader.getSystemResourceAsStream(PROPERTIES_FILE);
props.load(inputStream);

Но на этот раз это не работает. Аргумент inputStream по некоторым причинам является нулевым. PROPERTIES_FILE - это константа, определенная как "app.properties". Я попытался удалить расширение .properties и получил те же результаты.

Есть идеи?

Спасибо.

Ответы [ 2 ]

13 голосов
/ 21 апреля 2009

Константа PROPERTIES_FILE должна включать пакет, а также файл свойств (например, "com / some / library / file.properties".

    final static String PROPS_FILE = "/com/some/library/file.props";
                     //The preceding  "/" is dependendant on wheterh 
                     //you are going to be giving a relative or absolute location
    InputStream is = YourCurrentClass.class.getResourceAsStream(PROPS_FILE);
0 голосов
/ 21 апреля 2009

Когда getSystemResourceAsStream возвращает null, это означает, что ресурс не найден. Убедитесь, что запрошенный ресурс действительно находится в пути к классам в указанном месте.

...