以下场景:
我正在为编译为可运行jars的小型服务系统扩展一个管理工具。这些服务在其类路径中使用xml配置来执行大量任务。
现在,我希望从编译后的jar文件中提取配置文件,如db配置,并将它们动态添加到类路径中。到目前为止,如果您想要更改数据库的设置,则需要重新编译整个套件,这是各种糟糕的imho。
我尝试过的:
java -Xbootclasspath/p:/path/db.xml java -jar Foo.jar -这会导致java vm错误java -Xbootclasspath/p:/path/db.jar java -jar Foo.jar -这似乎没有任何作用,我试图通过类路径中的以下脚本找到xml文件,但我无法找到。xml直接位于jar中(使用jar cvMf db.jar db.xml创建)
我使用的脚本:
ZipFile zf;
ZipFile zf;
try{
zf = new ZipFile("Foo.jar");
} catch(final ZipException e){
throw new Error(e);
} catch(final IOException e){
throw new Error(e);
}
final Enumeration e = zf.entries();
while(e.hasMoreElements()){
final ZipEntry ze = (ZipEntry) e.nextElement();
final String fileName = ze.getName();
final boolean accept = Pattern.compile(".*(xml)").matcher(fileName).matches();
if(accept){
log.debug(fileName);
}
}我希望有人能帮我解决这个问题,我完全不知道我还能尝试什么。
发布于 2014-12-04 04:31:10
我已经重新打包了xml,现在它似乎工作得很好。很抱歉发表了不必要的帖子。
https://stackoverflow.com/questions/27280691
复制相似问题