我正試圖切換到Intellij,但是當我加載我的項目時,調試器似乎跳過了行,並且在我試圖通過時未跟蹤實際源。我知道這是一個模糊的問題,但有誰知道導致Intellij在調試時不正確地鏈接到源代碼的問題?如何解決Intellij調試問題?
3
A
回答
2
我能想到的唯一的事情是當前編譯的類與您用來調試的源不匹配。 在這種情況下會發生什麼情況是,IntelliJ(或任何其他IDE)從類中獲取調試信息(例如行號),然後將其映射到您正在查看的當前源,以向您顯示代碼正在執行。
如果代碼已過時,或版本(源代碼和編譯的類)以任何方式不匹配,則可能發生已調試的信息提供IDE信息以顯示某一行,但該信息不正確給出當前的源代碼,這可能會導致看起來像被調試的「跳躍」線路或者僅僅停留在沒有多少意義的地方。
你重建了你的項目嗎?那些來自Jar類的源代碼,你確定這些版本匹配嗎?
希望它有幫助!
0
您可以將IntelliJ配置爲使用Eclipse java編譯器,這可能會解決您的問題。從下面的鏈接:
https://youtrack.jetbrains.com/issue/IDEA-8021
「 這已經不是第一次報告有關知名老javac的問題:對於一些try/catch語句和if/else語句結構,它生成若干個字節碼指令,這是錯誤的關聯所以在跳步的時候,調試器遇到不同行號的跳轉指令並決定停止跳轉(因爲行號已經改變),javac不應該爲該指令分配不同的行號
您在Eclipse中看到的行爲不同,只是因爲它使用了自己的編譯器而不存在這個問題。如果將Eclipse配置爲使用javac進行編譯,請參閱所描述的行爲。或者,您可以將IDEA設置爲使用eclipse編譯器來解決問題(僅適用於當前EAP版本 - 構建5xxx--與eclipse編譯器集成)「
另請參閱關於配置Maven以使用Eclipse編譯器的Q:
相關問題
- 1. 如何解決Android調試器問題?
- 2. 解決IntelliJ通信問題
- 3. 嵌套的Ajax問題。如何調試/解決?
- 4. 如何解決Visual Studio 2013中的調試輸出問題?
- 5. 調試時,geting暫停..如何解決此問題?
- 6. 如何調試並解決ComboBox的綁定問題?
- 7. 如何解決SecurityException問題?
- 8. 如何解決swrevealviewcontroller問題
- 9. 如何解決SVN:externals問題
- 10. 如何解決jQuery問題?
- 11. 如何解決問題parent.document
- 12. 如何解決IE7問題
- 13. 如何解決DataGridView.RowValidating問題
- 14. 如何解決UnicodeWarning問題?
- 15. 如何解決javax.mail.AuthenticationFailedException問題?
- 16. 如何解決nsusredefaults問題
- 17. 如何解決javax.mail.AuthenticationFailedException問題
- 18. Memcpy_p問題,如何解決?
- 19. NSThread問題如何解決?
- 20. 如何解決`PlaceAutocompleteFragment`問題?
- 21. 如何解決zkemkeeper問題?
- 22. 如何解決connection.session問題
- 23. 如何解決mysql_fetch_array()問題
- 24. 如何解決此問題?
- 25. 如何解決弧問題
- 26. 如何解決SPF問題
- 27. Android虛擬設備的IntelliJ問題解決方案問題
- 28. 調試問題解析XML
- 29. 標題位置問題,如何解決?
- 30. 解決問題!
沒見過這種行爲,你嘗試過一個完整的清潔和重建 –
你跟蹤你自己的源代碼,或一些圖書館的來源問題可能是在同一個庫的幾個版本?類路徑 –