项目配置logback.xml文件正常,也引入的所需要的包,在IDE中执行时可以打印出日志文件,但是maven install为jar文件后便不能生成日志文件了。
详情:将含有logback.xml配置文件的项目打包成jar文件后(项目A),由另一个项目调用(项目B),没有生成项目A的日志文件;
原因:在项目B调用项目A的时候使用的方式是(注意红色字体部分):
Runtime rn = Runtime.getRuntime();
@SuppressWarnings("unused")
Process p = null;
try {
p = rn.exec("cmd.exe /c java -Dfile.encoding=utf-8 -jar ./test.jar");
} catch (Exception e) {
e.printStackTrace();
}
将上面红色字体部分改为:
p = rn.exec("cmd.exe /c java -Dfile.encoding=utf-8 -jar -Dlogback.configurationFile=logback.xml ./test.jar");
此时再执行B调用A,即可生成本地日志文件。