是什么原因导致Log4JLogger无法找到或无法使用?

Deb*_*Roy 11 java log4j apache-commons-logging

我在类路径中有commons-logging.jar(v1.0.4)和log4j-1.2.8.jar,并且遇到以下运行时错误:

Caused by: org.apache.commons.logging.LogConfigurationException: User-specified log class 'org.apache.commons.logging.impl.Log4JLogger' cannot be found or is not useable.
    at org.apache.commons.logging.impl.LogFactoryImpl.discoverLogImplementation(LogFactoryImpl.java:874)
    at org.apache.commons.logging.impl.LogFactoryImpl.newInstance(LogFactoryImpl.java:604)
    at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:336)
    at org.apache.commons.logging.impl.LogFactoryImpl.getInstance(LogFactoryImpl.java:310)
    at org.apache.commons.logging.LogFactory.getLog(LogFactory.java:685)
Run Code Online (Sandbox Code Playgroud)

sea*_*g9x 14

如果您使用Maven,则必须确保在pom.xml中声明commons-logging和log4j

<dependencies>
    <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.1.3</version>
    </dependency>
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
    </dependency>
</dependencies>
Run Code Online (Sandbox Code Playgroud)

如果你只声明公共 - 记录你得到错误 Log4JLogger cannot be found or is not useable


Deb*_*Roy 5

这是一个类路径问题,我们在类路径中确实有另一个版本的log4j。谢谢内森·瑞安!