我指定了Log4J的新版本,但依赖关系仍显示旧版本

t3psigkw  于 2022-11-06  发布在  其他
关注(0)|答案(2)|浏览(320)

我有一个使用SLF4J的项目,SLF4J也使用Log4J 1.2.17(作为默认值,没有在pom.xml中指定任何版本)。
大家好,我想将Log4J版本升级到2.17.1,这里有关于如何升级的信息https://logging.apache.org/log4j/2.x/maven-artifacts.html
我在pom.xml文件中添加了以下代码

<dependencies>
  <dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-slf4j-impl</artifactId>
    <version>2.17.1</version>
  </dependency>
</dependencies>

然后,当我检查Maven Dependecies时,它会显示项目中的旧版本和新版本

目前我对“我升级了Log4J还是没有升级”感到困惑。我怎么能确定呢?

cig3rfwq

cig3rfwq1#

在pom.xml文件中,您需要找到atlassian-bamboo-web并排除log4j,使用类似于下面的内容

<dependency>
    <groupId>com.atlassian.bamboo</groupId>
    <artifactId>atlassian-bamboo-web</artifactId>
    <version>6.8.1</version>
    <exclusions>
        <exclusion>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
        </exclusion>
    </exclusions>
</dependency>

然后,为了保留竹子采伐,您可能需要执行从log4j 1.x到2.x https://logging.apache.org/log4j/2.x/manual/migration.html的迁移
您还需要添加此依赖关系以使用较低版本覆盖可传递依赖关系。

<dependency>
    <groupId>org.apache.logging.log4j</groupId>
    <artifactId>log4j-to-slf4j</artifactId>
    <version>2.17.1</version>
</dependency>
w46czmvw

w46czmvw2#

我解决了一个排除旧依赖项的类似问题。请检查此部分的“exclusion”子句,并将其添加到您的POM xml文件中。Maven Dependency Mechanism

相关问题