Различное расположение ресурсов между Eclipse IDE run и Executable Java - PullRequest
0 голосов
/ 08 мая 2019

У меня проблема с загрузкой файла свойств. Кажется, что местоположения разные между запуском проекта в Eclipse и созданием исполняемого jar и добавлением ресурсов в jar.

Я создал проект как проект maven из Eclipse. Это созданная файловая структура. enter image description here

Если я хочу избежать исключения NullPointerException при работе в Eclipse, мне нужно использовать:

InputStream stream = RMDepositImport.class.getResourceAsStream("/RMDeposit.properties");

Это то, что находится в целевой папке: enter image description here

Однако я получаю исключение NullPointerException, если экспортирую в исполняемый файл Jar.

Чтобы Jar смог найти файл свойств, мне нужно изменить путь на:

InputStream stream = RMDepositImport.class.getResourceAsStream("/resources/RMDeposit.properties");

Но это приводит к появлению нулевого указателя при запуске проекта в Eclipse.

Вот файловая структура файла .properties, который находится в папке ресурсов. enter image description here

Почему это происходит и как я могу это исправить? Похоже, что jar получает .properties, помещенные в папку ресурсов, а запуск проекта в Eclipse помещает .properties в корень. Я боролся с этим несколько часов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...