事件背景:
我的log4j和self4j按照网上的配置,配置成功了,但是报错如下:
让我很是郁闷,于是找了一大圈。。。。。。。。
解决方案:
总结来说就是:log4j.properties和logback.xml这两个放的文件(这两个方案源自于网上)
1、配置文件放到 classpath 目录即:target/classes
2、设置 resources 目录为 Resource roots
根据 Maven 标准目录结构, main 和 test 目录下都会有 resources 目录:
src/main/java Application/Library sources (java源代码文件,会自动编译到classes文件夹下)
src/main/resources Application/Library resources (资源库,会自动编译到classes文件夹下)
src/test/java Test sources (测试java源代码文件)
src/test/resources Test resources (测试需要的资源库)
简单总结
log4j.properties放到src/test/resources下
logback.xml放到src/main/resources下
------------------------------------------------------分割线------------------------------------------------------------------------
以上并没有解决我的问题,因为我的配置放的位置并没有错误
于是,我又再次查询slf4j+logback配置和logback.groovy配置方式相关资料
结果发现是因为引入的依赖jar的问题,pom中引用这几个版本的jar完美解决问题
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.5.6</version>
<type>jar</type>
</dependency>
<dependency>
<groupId>slf4j-simple</groupId>
<artifactId>slf4j-simple</artifactId>
<version>1.5.2</version>
</dependency>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-core</artifactId>
<version>1.1.2</version>
</dependency>
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.14</version>
<scope>provided</scope>
</dependency>
再次运行代码结果如下:
到此结束,成功修复这个问题!