我有一份专断档案目录,我想在我的jar中列入——然而,我不能说出这样做的方法,以便与出口——和“可兰经”合作。 我曾尝试过使名录成为一种源路的trick,但在我建造jar时仍然没有。 我认识到,我可以人工将其添加到(这只是一纸空文,毕竟是一纸空文)——或者我可以使用一纸script或其他建筑系统——但我却想想出一些东西,为“Java项目”设计出一纸。
这里就是一个例子。 如果存在的话,我就试图装上记录4j.properties。 如果不是的话,我想从我的jar档案中包含的缺省中写出来。 最后,如果违约的话,它就会装上违约。
Note that I have no idea yet if the code below works, it will likely need tweaking. I m not asking for help with that, I m just giving context for what I want to do.
// initialize logging libraries
File log4jFile = new File("log4j.properties");
if (log4jFile.exists() & log4jFile.canRead()) {
PropertyConfigurator.configure(log4jFile.getAbsolutePath());
}
else {
try {
InputStream log4jJarstream = Main.class.getResourceAsStream(sepd + "resources" + sep + "log4j.properties");
OutputStream outStream = new FileOutputStream(new File("log4j.properties"));
int read = 0;
byte[] bytes = new byte[1024];
while ((read = log4jJarstream.read(bytes)) != -1) {
outStream.write(bytes, 0, read);
}
log4jJarstream.close();
outStream.flush();
outStream.close();
}
catch (Exception e) {
BasicConfigurator.configure();
log.warn("Error writing log4j.properties, falling back to defaults.");
}
}