首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 相關知識

Eclipse 解決 android.jar has no source attachment 問題完整指南

     編輯:Java 相關知識

Eclipse 中 Android 專案出現 "android.jar has no source attachment" 解決方案

在 Eclipse 開發 Android 專案時,常遇到「Source not found:The JAR file ... android.jar has no source attachment」錯誤。這是因為 Eclipse 找不到對應 API 版本的 Android 原始碼,導致無法查看框架原始碼進行除錯。本文提供完整解決步驟。

問題原因分析

當專案的 Target SDK 和 Compile With 選擇特定 API 版本(如 API 17 對應 Android 4.2.2)時,若本機 SDK 未安裝該版本的 Sources for Android SDK,Eclipse 就無法關聯原始碼,點擊類別或方法時只會顯示反編譯的 .class 檔案,而非原始 Java 碼。

解決步驟

步驟 1:透過 SDK Manager 下載原始碼

  1. 在 Eclipse 中開啟 Window → Android SDK Manager
  2. 找到專案對應的 API 版本(如 Android 4.2.2 / API 17)
  3. 勾選 Sources for Android SDK
  4. 點擊 Install packages... 進行安裝

安裝完成後,原始碼預設路徑為:<SDK目錄>/sources/android-<API版本>
例如:D:\adt-bundle-windows-x86_64-20130522\sdk\sources\android-17

步驟 2:在 Eclipse 中關聯原始碼

  1. 在編輯器中滑鼠懸停於報錯的類別(如 Activity),或按 F3 進入宣告
  2. 點擊「Attach Source...」按鈕
  3. 在彈出對話框中選擇 External Folder
  4. 瀏覽並選擇剛才下載的原始碼目錄(如 D:/adt-bundle-windows-x86_64-20130522/sdk/sources/android-17)
  5. 點擊 OK 完成關聯

進階問題:API 18 (Android 4.3) 編碼問題

使用 Android 4.3 (API 18) 時,可能遇到「the source attachment does not contain the source for the file *.class」錯誤,且指定原始碼目錄無誤。實際原因是 編碼格式不匹配。

解決方法:

  1. 在「Attach Source」對話框中,找到 Encoding 選項
  2. 將預設編碼修改為 UTF-8
  3. 確定後問題即可解決

驗證是否成功

重新啟動 Eclipse,再次點擊 Android 框架類別(如 TextView、Intent),應可正常顯示原始碼並支援斷點除錯。

常見問題排查

  • 找不到 Sources 選項:確認 SDK Manager 視圖中已勾選「Obsolete」顯示舊版 API
  • 路徑包含中文/空格:建議 SDK 安裝路徑使用純英文、無空格
  • 多專案共用 SDK:只需下載一次 Sources,所有專案共用即可

以上即為 Eclipse 解決 android.jar 無原始碼關聯問題的完整指南,包含基本安裝與進階編碼修正,希望能幫助開發者快速恢復原始碼檢視與除錯功能。

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