首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 更多程式語言 >> 程式設計綜合問答

Eclipse SSH 整合報錯 NoClassDefFoundError: LogFactory — 缺少 commons-logging.jar 衝突排查

     編輯:程式設計綜合問答

錯誤堆棧


java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory
Caused by: java.lang.ClassNotFoundException: org.apache.commons.logging.LogFactory

原因

Spring 依賴 commons-logging 作為日志門面,項目 WEB-INF/lib 缺少該 jar,或存在多個版本導致類加載器委派模型衝突。

解決步驟

  1. Maven 依賴(推薦):
    
    <dependency>
        <groupId>commons-logging</groupId>
        <artifactId>commons-logging</artifactId>
        <version>1.2</version>
    </dependency>
    
    Spring 核心模塊通常傳遞依賴,檢查 mvn dependency:tree 是否被 <exclusion> 移除。
  2. 手動導入:下載 commons-logging-1.2.jar 放入 WEB-INF/lib。
  3. 排除衝突:若引入 slf4j-jcl 或 log4j-over-slf4j,確保類路徑中只有一個 LogFactory 實現。

驗證

重新發布項目,Tomcat 啟動無異常,Spring 容器正常初始化。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved