我想要做的是与这个问题完全相同:Using Class.getResourcesAsStream to get Apache Commons Configuration但是使用Apache Commons Configuration 2.
到目前为止,我已尝试在classpath中使用test.properties创建第一个maven项目:
test1=value1
然后,我在classpath中用另一个test.properties创建了另一个maven项目:
test2=value2
在第二个项目中,我对第一个项目进行了依赖,然后创建了一个main:
public static void main(String[] args) throws Exception {
Configurations configurations = new Configurations();
PropertiesConfiguration configuration = configurations.properties("test.properties");
System.out.println(configuration.getString("test1"));
}
当我运行主要内容时,我想获得value1
,但我得到null
。显然,我创建PropertiesConfiguration的方式不会读取第一个模块中的test.properties文件。
实现这一目标的任何想法或建议?
答案 0 :(得分:1)
我设法通过使用sql.execute "select * from tbl where a=? and b=?", [ 'aa', 'bb' ]
sql.execute "select * from tbl where a=:first and b=:last", first: 'aa', last: 'bb'
获取网址,然后迭代这些网址以加载属性文件并将其放入getClassLoader().getResources("...")
。
尽管如此,我希望Apache Commons Configuration2直接处理这个用例。
也许存在更漂亮的方式?
CompositeConfiguration