Я храню настройки своего приложения в файле свойств, который я использую в Ant и в приложении Java.Может быть, это не очень хорошая практика, но я считаю, что это очень удобно, чтобы избежать дублирования.Файл содержит переменные, такие как:
usefulstuff.dir = ${user.home}/usefulstuff
Чтобы другие люди могли запускать программу в * nix системах при условии, что в их домашнем каталоге есть папка полезного материала.
ТеперьУдивительно, что этот файл свойств прекрасно работает в Ant (переменная разрешается в /home/username
), тогда как когда я загружаю тот же файл непосредственно в приложение Java, я получаю строку, содержащую ${user.home}/usefulstuff
,что не очень полезно на самом деле.
Я загружаю реквизиты с этим кодом в Ant:
<loadproperties srcFile="myProps.properties"/>
А в приложении Java:
FileInputStream ins = new FileInputStream(propFilePath);
myProps.load(ins);
ins.close();
Я пропустилчто-нибудь?Может быть, есть лучший способ загрузки свойств в приложении Java, чем load()
?