2012-10-04 91 views
4

我正在使用適用於Java EE開發人員(Mac OS X 64位)的Eclipse IDE來調試我的兩個java文檔。我有一個名爲insertName類。它執行但給出錯誤的結果。 NamesTesterName類的測試類。調試時未找到源

在調試過程中,當我使用步驟進入insert方法時,它跳轉到一個奇怪的文檔ArrayList<E>.size(),它顯示Source not found。我不知道什麼是錯的。這是否意味着我無法步入一個方法來看看那裏發生了什麼?但是,如果我使用一步,它正在調試下一步罰款。

有人可以幫我找到原因和解決方案嗎?謝謝!

+1

歡迎來到SO。對於任何人來幫助你,你需要編輯你的文章以包含導致問題的源代碼。 –

+0

@JimGarrison,爲什麼上面的問題需要源代碼?與你想要問什麼有關的源代碼? –

+0

它使世界上的所有差異。如果我可以看到源代碼,我可以指出爲什麼他跳入'ArrayList.size()'。 –

回答

1

這意味着您跳入項目classpath無法訪問的類定義。例如Java JVM源代碼。 在你的情況,也許它試圖跳轉到ArrayList定義。

看出來直通谷歌有關調試在Eclipse中,步入和步驟通

-1

我認爲你需要的源代碼附加到庫,這將有助於調試器來找到它。

關注該thread節16.2,

希望這會幫助你。

+0

兄弟不提供完整的文檔爲簡單的答案。 Simillarly我們可以爲這裏的大多數問題提供java doc。至少提及部分名稱。我認爲你正在試圖提及的第16.2節。 –

0

您已調試到Java運行時代碼,但您的計算機上未安裝其源代碼。避免將來最簡單的方法是安裝完整的Java開發工具包(JDK),而不僅僅是Java運行時環境(JRE),並確保Eclipse使用該JDK。

+0

是的,我忘了安裝JDK。然後我下載了這個:jdk-7u7-macosx-x64.dmg並安裝它。但似乎沒有任何改變。我該怎麼辦? – lkkeepmoving

0

您指向ArrayList.size()的方法是jdk的ArrayList類的方法。

第一:未找到的來源不是錯誤。 當您處於調試模式並且調試時輸入某些類的.java文件不在類路徑中時,找不到源代碼。這條消息意味着,你正在試圖刪除的代碼部分,源代碼不可用,因此調試器不能顯示突出顯示的行等。 現在要解決這個問題,我的意思是能夠看到你的方法調試器,下載jdk的源代碼(與當前使用的版本相同),並且當您看到未找到源代碼屏幕時,會顯示一個atrach源代碼按鈕。選擇該代碼並選擇已下載的源代碼文件,然後按確定。並且tge屏幕將刷新該類的突出顯示的行。

+0

謝謝你的解釋。但是當我嘗試修復它時,我的意思是當我看到源未找到屏幕時,我單擊編輯源查找路徑並添加我的源代碼文件。但什麼都沒有改變。我不知道爲什麼。 – lkkeepmoving

+0

我只看到一個可能的原因,tge源文件不是源文件。該文件是一個.java文件嗎? –