我的项目结构如下所示。我不想将配置文件作为资源包含进来,而是在运行时读取它,以便我们只需更改设置而无需重新编译和部署。我的问题是两件事情Java/Gradle读取外部配置文件
- 阅读恰恰是没有,尽管不同的方式工作的文件,我已经试过(见当前实现下面我试图)
- 使用时的gradle,我该needto告诉它如何构建/或部署该文件,并在哪里?我认为这可能是问题的一部分..配置文件在进行gradle构建或尝试在Eclipse中进行调试时没有部署。
我的项目结构:
myproj\
\src
\main
\config
\com\my_app1\
config.dev.properties
config.qa.properties
\java
\com\myapp1\
\model\
\service\
\util\
Config.java
\test
Config.java:
public Config(){
try {
String configPath = "/config.dev.properties"; //TODO: pass env in as parameter
System.out.println(configPath);
final File configFile = new File(configPath);
FileInputStream input = new FileInputStream(configFile);
Properties prop = new Properties()
prop.load(input);
String prop1 = prop.getProperty("PROP1");
System.out.println(prop1);
} catch (IOException ex) {
ex.printStackTrace();
}
}
我不知道如何以及在哪里部署应用程序,但是您可以使用它:https://github.com/stevesaliman/gradle-properties-plugin? 第二个选择是有一个静态路径到文件,其中将包含其他配置的路径。 –
你能分享你的实际build.gradle? – ToYonos