项目中使用logback框架进行日志处理,logback.xml配置文件中出现配置日志文件的基准目录,如下截图:
截图中出现下面代码:
-- 注释:日志基准目录,相对于Tomcat,也可定义绝对目录
<property name="log.base" value="${user.dir}/logs" />
对其中的$(user.dir)表示什么不知所云。
百度后:user.dir指系统属性,表示用户的当前工作目录。
PS:相关的系统属性链接:https://201111181922.iteye.com/blog/1335869
了解user.dir代表的意义后,进入代码测试,打印出当前项目下user.dir的路径
代码测试:
@Test
public void test1() {
String str1 = System.getProperties().getProperty("user.dir");
System.out.println(str1); //F:\java-project\zhuo-wang\wk-bossagent\bossagent
}
项目情况截图:
代码测试得知,user.dir表示的是当前项目的根目录。
PS:此属性同样适用于linux系统
结论:使用系统属性可以表示日志文件的绝对路径,不管是windows还是linux都是使用的。