當我在Eclipse中調試我的代碼時,當我打開編輯器以找出我無法編輯它,因爲我實際上正在查看源代碼時, .class文件。在調試模式下,如何讓Eclipse打開.java文件而不是.class文件?在Android R18更新後從調試視圖編輯.class中打開源代碼
編輯:當我在遇到斷點我代碼,它帶給我MyFile.class,而不是MyFile.java,所以我可以看到我的代碼但不能編輯它。
編輯:我猜它somethign做Android和ADT R18
當我在Eclipse中調試我的代碼時,當我打開編輯器以找出我無法編輯它,因爲我實際上正在查看源代碼時, .class文件。在調試模式下,如何讓Eclipse打開.java文件而不是.class文件?在Android R18更新後從調試視圖編輯.class中打開源代碼
編輯:當我在遇到斷點我代碼,它帶給我MyFile.class,而不是MyFile.java,所以我可以看到我的代碼但不能編輯它。
編輯:我猜它somethign做Android和ADT R18
當我終於找到了一些時間和很好的理由來深入研究這個問題後,我將詳細闡述Thornbjorn的答案。
最近,谷歌改變了Android項目打包外部Android庫的方式。在ADT R17中(我認爲)它開始將外部項目源打包到.jar文件中,並將它們直接包含到Android Dependencies或/ libs文件夾中的項目中。
現在,當調試器遇到斷點時,它會在.jar中調出源代碼,實質上是告訴您編輯.class文件。問題是這個文件是隻讀的,所以你必須手動找到你的.java源文件。 (疼痛)
修復方法是在調試視圖中右鍵單擊項目名稱,然後從菜單中選擇「編輯源查找...」。從那裏,刪除默認查找路徑。之後,手動添加項目引用的關聯項目(不是罐子)。這可以通過單擊添加,選擇Java Project,然後檢查相應的項目來完成。
我搜索了很長時間才發現這個「Edit source lookup ...」選項。我終於發現它在調試視圖中的上述位置! (列出了堆棧和線程的窗口:))謝謝! – 2013-01-30 21:59:40
很好的答案! :) – Krystian 2013-06-19 10:34:49
非常感謝!讓我寫下那些仍然不知道如何解決問題的詳細步驟。 1.開始在eclipse中調試你的項目。 2. Eclipse菜單:Window-> Show View-> Debug。 3.在調試視圖中,右鍵單擊您的項目名稱,然後選擇「編輯源查找...」4.不需要刪除「默認」,只需點擊「添加...」 - > Java項目 - >(庫)項目包含源文件。確保在「編輯源查找路徑」對話框中選定的項目高於「默認」。 – 2013-09-09 08:40:43
出於某種原因,Eclipse不相信類文件來自於您的Java文件。這通常是錯誤配置的構建路徑,或者是使用jar文件而不是生成jar文件的項目。
查看項目經理面板(<->
按鈕),查看Eclipse找到類文件的位置,然後找出爲什麼它使用該位置而不是使用源文件的項目。
我認爲你是正確的,因爲android如何將外部android庫封裝在罐子裏 – styler1972 2012-07-11 21:16:54
好的,所以我討厭成爲「那個人」,考慮到這個人工作的人數,但這對我來說根本不起作用。我的意思是「編輯源查找...」菜單項不在上下文菜單中。我沒有錯過在「調試透視圖」中執行此操作的說明(大概在「調試透視圖」的「項目瀏覽器」中)。我在應用程序運行的同時應用程序被暫停時嘗試了它。我嘗試檢查應用程序項目的菜單(大概是指示的內容)和圖書館項目。沒有骰子。這是最新的Eclipse版本。
不過,我能解決問題:
main project properties -> Java Build Path -> Projects
選項卡並添加有主體工程項目依賴。Order and Export
選項卡,取消Android Dependencies
我試過了其他的建議,這是爲我工作的那個!謝謝! – dhaag23 2014-01-30 02:52:42
什麼課?這是一個你沒有附加源的圖書館類嗎? – 2012-07-11 21:08:35
不,這是我寫的代碼。 – styler1972 2012-07-11 21:08:53
這很奇怪。我從來沒有見過這種行爲。 – 2012-07-11 21:09:37