任何人都可以告诉我如何将Log4j的日志文件放在我的项目位置? 我想每次都将我的日志文件放入src / main / resources。 我不想在我的项目的磁盘上关心我的位置,例如:如果我在D:/项目中有我的项目,之后我在C:/ project中更改我的位置项目我想把我的日志文件放在每次在src / main / resources上都没有将此行更改为此
log4j.appender.file.File=C:\\project
用这个
log4j.appender.file.File=D:\\project
有人有什么想法吗? Thx提前寻求帮助:)
答案 0 :(得分:3)
您可以编写逻辑来确定您的应用程序是在C:\...
还是D:\...
中运行,方法是检索当前目录并设置系统变量,如下所示"logPath"
System.setProperty("logPath", myPath); // where myPath is either C:\... or D:\... based on your logic
然后在log4j.properties
log4j.appender.file.File=${logPath}src\main\resources\MyApplicationLog.log
注意:您需要确保已设置系统变量 在log4j初始化之前。
答案 1 :(得分:0)
您可以使用此代码
在代码中定义变量System.setProperty("path", System.getProperty("user.dir"));
并将appender更改为
log4j.appender.file.File=${path}/src/main/resources