Съхранявам настройките на приложението си във файл със свойства, който използвам в 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()
?