Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/384.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Log4j-over-slf4j与spring应用中的Log4j冲突_Java_Spring_Maven_Intellij Idea_Pom.xml - Fatal编程技术网

Java Log4j-over-slf4j与spring应用中的Log4j冲突

Java Log4j-over-slf4j与spring应用中的Log4j冲突,java,spring,maven,intellij-idea,pom.xml,Java,Spring,Maven,Intellij Idea,Pom.xml,我正在尝试使用以下命令创建自定义附加器: public class StringBufferAppender extends org.apache.log4j.AppenderSkeleton 在里面我有 protected void append(LoggingEvent event) { //String message = event.getMessage(); } 问题是getMessage无法访问 在检查时,我发现以下内容: log4j-over-slf4j中

我正在尝试使用以下命令创建自定义附加器:

public class StringBufferAppender extends org.apache.log4j.AppenderSkeleton
在里面我有

protected void append(LoggingEvent event) {


        //String message = event.getMessage();

}
问题是
getMessage
无法访问

在检查时,我发现以下内容: log4j-over-slf4j中的LoggingEvent类和log4j中的LoggingEvent类

两者都有相同的包,因为我无法从log4j指向LoggingEvent,getMessage方法的包不可用

我想从pom文件中删除log4-over-slf4j,但我不确定应该在哪里添加排除

以下是我的pom.xml(由intellij向导创建):


org.springframework.boot
spring启动程序父级
1.3.2.构建快照
UTF-8
1.8
org.springframework.boot
弹簧启动机aop
org.springframework.boot
springbootstarter缓存
org.springframework.boot
spring启动程序数据mongodb
org.springframework.boot
spring boot启动器集成
org.springframework.boot
春靴起跑服
org.projectlombok
龙目
1.16.6
org.seleniumhq.selenium
硒爪哇
2.52.0
org.springframework.boot
弹簧启动安全
org.springframework.session
春季会议
org.springframework.boot
弹簧启动启动器验证
org.springframework.boot
SpringBootStarterWeb
org.springframework.boot
弹簧启动机tomcat
假如
org.springframework.boot
弹簧起动试验
测验
org.springframework
弹簧试验
4.2.4.1发布
org.mongodb.morphia
吗啡
1.1.0-2
奥里卡大学
奥里卡岩芯
1.4.6
朱尼特
朱尼特
4.12
org.aspectj
aspectjrt
1.8.9
公用网络
公用网络
3.5
**
log4j
log4j
${log4j.version}
**
org.springframework.boot
springbootmaven插件
春季快照
春季快照
https://repo.spring.io/snapshot
符合事实的
春季里程碑
春季里程碑
https://repo.spring.io/milestone
错误的
春季快照
春季快照
https://repo.spring.io/snapshot
符合事实的
春季里程碑
春季里程碑
https://repo.spring.io/milestone
错误的

那么,是否有可能以某种方式从pom中删除log4j-over-slf4j?

像这样排除log4j-over-slf4j

<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-aop</artifactId>
        <exclusions>
            <exclusion>
                <artifactId>log4j-over-slf4j</artifactId>
                <groupId>org.slf4j</groupId>
            </exclusion>
        </exclusions>
    </dependency>

org.springframework.boot
弹簧启动机aop
log4j-over-slf4j
org.slf4j

您需要查看并找出添加了
log4j-over-sl4j
的位置。并在该依赖项下添加一个排除项。Lucky comment解决了它,其他依赖项也解决了它
<dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-aop</artifactId>
        <exclusions>
            <exclusion>
                <artifactId>log4j-over-slf4j</artifactId>
                <groupId>org.slf4j</groupId>
            </exclusion>
        </exclusions>
    </dependency>