3
我將我們的應用程序中的log4j版本從log4j 1.2.16升級到log4j 2.5。我們有很多依賴關係,所以我使用了migration documentation中描述的log4j 1.x網橋(log4j-1.2-api.jar)。它描述了用log4j-1.2-api.jar替換舊的log4j-1.2.16.jar。然而現在,當特定的依賴是在應用程序中引用啓動時,我得到這個消息:log4j 2遷移橋log4j-1.2-api.jar缺失類
拋出java.lang.ClassNotFoundException:org.apache.log4j.SimpleLayout定義
我看到log4j的這個類-1.2.16.jar,但不在log4j-1.2-api.jar中。
我該如何解決這個問題?這裏是我的一部分pom供參考:
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.6.1</version>
<exclusions>
<exclusion>
<artifactId>log4j</artifactId>
<groupId>log4j</groupId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-slf4j-impl</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-api</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-web</artifactId>
<version>2.5</version>
<scope>runtime</scope>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-core</artifactId>
<version>2.5</version>
</dependency>
<dependency>
<groupId>org.apache.logging.log4j</groupId>
<artifactId>log4j-1.2-api</artifactId>
<version>2.5</version>
</dependency>