簡體   English   中英

收到此錯誤:“無法初始化類 org.apache.logging.log4j.LogManager”

[英]Getting this error: "Could not initialize class org.apache.logging.log4j.LogManager"

在此處輸入圖片說明 我已經包含了所有必要的 log4j jar 文件,但我不明白為什么我仍然收到此錯誤。

package in.gstzen.einvoice;
import org.apache.log4j.LogManager;
import org.apache.log4j.Logger;

public class Log4jExample {

    private static Logger logger = LogManager.getLogger(Log4jExample.class);

    public static void main(String[] args) throws Exception {

        System.out.println("Hello World!\n");
        logger.debug("Log4jExample: A Sample Debug Message");
        logger.info("Log4jExample: A Sample Info  Message");
        logger.warn("Log4jExample: A Sample Warn  Message");
        logger.error("Log4jExample: A Sample Error Message");
        logger.fatal("Log4jExample: A Sample Fatal Message");
        System.out.println("Completed...");
    }
}

這看起來像是 log4j 版本 1 和 2 之間的沖突。您的類正在導入版本 1 類,但錯誤消息是針對 spring 框架未找到版本 2 類的 jar 文件的響應。 您想使用一種或另一種版本。

版本 1 將具有類路徑為 org.apache.log4j.x 的類 jar 將被稱為 log4j-1.xx

版本 2 將具有類路徑類似於 org.apache.logging.log4j.x 的類 jar 將被命名為 log4j-core-2.xx 和一個類似於 log4j-slf4j18-impl-2.xx 的實現

請參閱此遷移助手: https : //logging.apache.org/log4j/2.x/manual/migration.html

注意:如果您的類路徑同時包含版本 1 和版本 2 jars 所使用的實際類的解析可能有點隨機(並且有問題)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM