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

Android java.lang.NoClassDefFoundError:Eclipse 新增類無法運行的經典解決方案

     編輯:程式設計綜合問答

錯誤現象

java.lang.NoClassDefFoundError: Could not find class 'com.tmlh.carnetwork.ui.member.CCareofMap'
referenced from method com.tmlh.carnetwork.ui.member.CareofmycarActivity.onCreate

清單檔已宣告,但運行時找不到類。專案原有類正常,僅新增類失敗。

根因:Eclipse 增量編譯/構建路徑不同步

Eclipse 有時未將新增 .class 輸出到 bin/ 或 target/,或構建路徑緩存未更新,導致運行時類路徑缺少新類。

解決步驟 (按成功率排序)

  1. Project → Clean → 全選 → Clean (最常見解決)
  2. 右鍵專案 → Build Path → Configure Build Path → Order and Export → 勾選所有項目 → Apply and Close
  3. 刪除 bin/ 目錄 → Project → Clean
  4. 檢查 .classpath 是否包含 src/ 輸出:
    
    
    
    
    
    
  5. 重啟 Eclipse → 重新導入專案
  6. 檢查 ProGuard/R8 配置是否誤刪新類** (Release 建構才會觸發)

Android 專屬補充

  • AndroidManifest.xml 宣告 `` 需與包名+類名完全一致
  • 若為 Library Module,確認主模組 dependencies { implementation project(':lib') }
  • Instant Run (舊版) 可能導致類加載異常,關閉:Settings → Build → Instant Run → 取消勾選

遷移建議

**Eclipse ADT 已於 2015 年停止更新**。強烈建議遷移至 **Android Studio (IntelliJ 基礎)**:

  • Gradle 構建系統可靠、增量編譯穩定
  • 內建 Lint、ProGuard/R8、APK Analyzer、Layout Inspector
  • Kotlin 第一公民支援、Jetpack Compose 預覽
  • 遷移:File → New → Import Project → 選擇 Eclipse 專案根目錄 → 自動轉換 Gradle

總結

Eclipse 新增類 NoClassDefFoundError 90% 是**增量編譯/輸出目錄不同步**。Project → Clean 通常即時修復。長期解決:遷移 Android Studio,告別 Eclipse 歷史包袱。

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