2010-10-05 119 views
3

我有一個奇怪的問題,我從來沒有遇到過,在Eclipse中進行調試。在調試時,當我在新代碼中斷時,函數中的變量不會顯示在「變量」窗口中。顯示的只是那些作爲參數傳遞給函數的函數,它們顯示爲arg(0),arg(1)等,而不是他們的名字。當我想要觀察或檢查函數中的變量時,我會收到「無法解決此類問題」的消息。一些事實: 1.當我在調試堆棧中羅馬並查看其他功能時,變量顯示正確 2.調試運行與我編寫的代碼同步 3.我工作的項目使用外部工具編譯(即使用螞蟻)。我的同事們都沒有遇到過這樣的問題,儘管他們都是用外部工具編譯的。 4.日食是3.2.1版本Eclipse IDE無法解析新編寫的函數中的變量

回答

0

看起來像在編譯期間放棄調試信息。檢查Ant任務的命令行參數。

1

確保在運行代碼之前打開「調試透視圖」。這一次爲我解決了一個類似的問題。

+0

感謝您的建議,我希望我永遠不會再遇到這個問題,但如果我這樣做,我會嘗試轉移到debbug模式,儘管我不喜歡它。 – RBY 2010-10-05 15:03:59

5

如果您編譯的代碼沒有-g選項,這是一種典型的行爲。

在eclipse中:右鍵單擊項目,從上下文菜單和「Java編譯器」中選擇「屬性」。檢查是否啓用了「項目特定設置」。

如果啓用,請檢查是否選中了下方區域中的所有複選框,特別是「添加變量屬性以生成類文件」。

如果此複選框已啓用但未選中,請選中它(按應用),如果未啓用未選中,請選擇「配置工作區設置」並啓用全局缺失功能(我的建議)。


外部的工具 - javac命令需要-g選項。默認行爲(no -g)沒有局部變量信息。 (Reference)

+0

謝謝,似乎-g已經完成了... – RBY 2010-10-05 14:59:19

-1

另外幾件事。

  1. 確保您與編譯的JDK和調試,都是一樣的
  2. 如果它是一個真正的Eclipse錯誤(例如不高於公佈的解決方案之一),你可能會得到一些快樂了升級。
+0

1. JDK的是一樣的。 2.我相信我會這麼做,但我必須認真對待我的小組正在使用的版本。 – RBY 2010-10-05 15:00:30

-1

與ant編譯時,請確保您已將這些指令傳遞給javac選項。

javac **debug="true" debuglevel="lines,vars,source"** target="1.6" source="1.6" srcdir="${project.src.dir}" destdir="${project.build.dir}" classpathref="classpath">