Обычная ситуация: приложение упаковано в архив, а файл с настройками находится вне архива. Как читать файл настроек?
Первый, не очень элегантный вариант, заключается в том, чтобы передавать приложению местоположение конфигурационного файла как параметр -- либо как параметр командной строки, либо как system property:
-Dsome.name=/path/to/the.properties
Более элегантное решение - разместить конфигурационный файл в одном из каталогов, прописанных в CLASSPATH, и использовать
ClassLoader.getSystemResource("filename")
Такое решение следует паттерну "Convention over Configuration" и не замусоривает интерфейс запуска приложения. При помощи того же метода ClassLoader'а можно читать и properties-файлы, расположенные внутри jar-файла.
See also "property file location" discussion thread on TheServerSide.
Виртуальная песочница (тм)
Friday, May 15, 2009
How to read properties located outside/inside the jar?
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment