2010-09-17 50 views
3

我在Eclipse中遠程調試Java應用程序。 (露天項目的一串用ZIP檔案附加來源。)Eclipse遠程調試,斷點 - .java VS.class混淆

斷點做的工作,但:

1)每當我設置* .class文件斷點的Eclipse打開* java文件時,斷點到達。

2)當我設置的斷點從內* java文件一個斷點創建(顯然是獨立於的* .class的一組),並在斷點列出它不提供'轉到文件'選項。

3)指示斷點的項目符號從不顯示在* .java文件中;無論斷點是從* .class還是* .java文件創建的。

(如果它不是爲2和3我會愉快地* .java文件堅持的,當然。)

難道我做錯了什麼? ......或者這是一種常見的行爲,我無能爲力嗎?

+0

你是否只有一個項目或更多的源文件?當按Ctrl + Shift + T打開一個Java類時,告訴我,Foo它只顯示一個Foo或更多? – Mohsen 2010-09-17 13:08:59

+0

只有一個。 (並且Ctrl + Shift + R也不會顯示* .java文件。) – 2010-09-17 13:27:53

回答

2

在項目的「Java構建路徑」首選項中檢查「排序和導出」。
(或在「類路徑」選項卡「的運行配置啓動器)

對於本地項目,如果輸出目錄(」 build‘或’bin‘或’cls'或......)出現之前'src'你正在調試,你會遇到這種「斷點」混淆。

對於遠程項目,如果jar有源代碼附加到它們,它應該工作。

+0

'構建'文件夾根本沒有在順序和導出選項卡中列出。我認爲這裏的關鍵字是'遠程'(調試),即沒有我自己的代碼涉及,但。 – 2010-09-17 14:20:19

+0

例如,LoginBean.class從Referenced Libraries中的alfresco-web-client-3.3g.jar鏈接,此JAR附帶ZIP源代碼。即使我把這個JAR移到訂單和出口中的第一位,它也沒有什麼區別。 – 2010-09-17 14:26:49

+0

@Jaroslav:不確定,但是你可以嘗試直接將源代碼添加爲「庫」,並將其放在'alfresco-web-client-3.3g.jar'之前(它將保留與附加源相同的zip) – VonC 2010-09-17 14:46:18