Коли я запускаю свою програму під час eclipse, це не проблема мати файл властивостей у src/main/resources
папку. Коли я тоді біжу maven install
, цей файл властивостей ставиться в config
папку за допомогою складання Maven. Отже наступне питання:
Працюючи в затемненні, я отримую доступ до файлу властивостей просто за допомогою:
File propsFile = new File( "src/main/resources/settings.properties" );
Після maven install
Звичайно, я більше не можу дійти до цього файлу. Але який робочий процес найкращий, щоб дійти до файлу під час мого розвитку затемнення і після maven install
не маючи його двічі ?!
Моя складова структура після maven install
виглядає так:
application folder
|----bin
|----batch file to start my application
|----lib
|----my application jar
|----other dependencies jars
|----config
|----settings.properties
Дякую заздалегідь вже :)
Відповіді:
0 для відповіді № 1Якщо ви запускаєте додаток через файл сценарію, я б запропонував вам включити в папку classpath, куди settings.properties
знаходиться за адресою:
У Eclipse вам взагалі нічого не потрібно робити, тому що всі файли з
srcmainresources
є насправді скопійовано прямо вtargetclasses
вихідний каталог, який справді знаходиться в заголовку classpath.А у вашому файлі скриптів вам потрібно лише попередньо відкласти файл
<application>config
файл на початку класу виконання.
Але тоді вам доведеться змінити спосіб читання ресурсів програми: Замініть за допомогою File
API від ClassLoader.getResourceAsStream
:
InputStream input=getClass().getClassLoader().getResourceAsStream("settings.properties");
Properties properties=new Properties(input);