ClassCastException-无法将org.slf4j.impl.JDK14LoggerFactory强制转换为ch.qos.logback.classic.LoggerContext

时间:2019-04-28 03:41:30

标签: java logging weblogic12c logback-classic

尝试此操作时遇到上述异常:

import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import ch.qos.logback.classic.LoggerContext;
import ch.qos.logback.core.util.StatusPrinter;

private static final Logger LOGGER = LoggerFactory.getLogger( ABC.class.getName() );
public String greet() {
    LOGGER.info("START1:: [ {} ] , [ {} ] , {}", ABC.class.getName(),"greet",123);
    LoggerContext lc = (LoggerContext) LoggerFactory.getILoggerFactory();

已经检查了我的Maven依赖项-这就是我拥有的:

<dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-classic</artifactId>
        <version>1.2.3</version>
        <scope>compile</scope>
    </dependency>
    <dependency>
        <groupId>ch.qos.logback</groupId>
        <artifactId>logback-core</artifactId>
        <version>1.2.3</version>
        <scope>compile</scope>
    </dependency>

不确定我在做什么错。 环境是部署在weblogic 10.2.3和jre 1.7中的war文件

编辑: 当我搜索JDK14LoggerFactory时,无法在classpath上的任何JAR中找到此类(在Web应用程序内)

UPDATE1: 在哪个jar文件中查找文件-JDK14LoggerFactory:在weblogic中找到以下内容:

  

\ Oracle_Home \ wlserver \ modules \ features \ weblogic.server.merged.jar   \ Oracle_Home \ wlserver \ modules \ org.slf4j.jdk14_1.0.0.0_1-6-1.jar

UPDATE2: 查看哪个jar包含文件-LoggerFactory:可在weblogic中找到以下内容:

\Oracle_Home\oracle_common\modules\oracle.dms_12.1.3\dms.jar
\Oracle_Home\oracle_common\modules\oracle.dms_12.1.3\dms.jar
\Oracle_Home\oracle_common\modules\oracle.odl_12.1.3\ojdl2.jar
\Oracle_Home\oracle_common\modules\oracle.odl_12.1.3\ojdl2.jar
\Oracle_Home\wlserver\modules\clients\com.oracle.webservices.wls.jaxws- 
 wlswss-client.jar
 \Oracle_Home\wlserver\modules\com.bea.core.apache.log4j_1.3.0.0_1-2-15.jar
 \Oracle_Home\wlserver\modules\features\weblogic.server.merged.jar
 \Oracle_Home\wlserver\modules\features\weblogic.server.merged.jar
 \Oracle_Home\wlserver\modules\hibernate.validator_1.0.0.0_4-1-0.jar
 \Oracle_Home\wlserver\modules\org.jboss.weld.core_2.0.0.0_1-1-18.Final.jar
 \Oracle_Home\wlserver\modules\org.slf4j.api_1.0.0.0_1-6-1.jar
 \Oracle_Home\wlserver\server\lib\consoleapp\APP-INF\lib\log4j-1.2.8.jar

所以看起来这是问题所在-现在我需要禁止从上述位置加载类,并强制从WEB-INF \ lib文件夹加载该类。 将此作为单独的问题发布

0 个答案:

没有答案