在eclipse中調試maven test
一般情況下,使用如下方式都不能使myeclipse檢測到程序中的斷點:
項目 -> Run As -> maven test
或
項目 -> Debug As -> maven test
如果想使eclipse在執行 maven test 的時候,能進行斷點調試,需要進行如下設置:
1、 項目 -> Run As -> Open Run Dialog...
2、在對話框中左側的 Maven Build 選項點擊右鍵新建一個標簽
3、在右側的Main選項卡中,點擊 Browse Workspace... 按鈕,並選擇要調試的項目名稱
4、在右側的Main選項卡中的 Goals 文本域中 輸入 -Dmaven.surefire.debug test
5、點擊 Apply 按鈕,在點擊 Run 按鈕 即可執行斷點調試
注意:在執行調試的過程中,maven會在控制台輸出一下內容:
"Listening for transport dt_socket at address: 5005"
這說明已經啟用了斷點調試功能,但你會發現隨后許久都不會有任何內容輸出,原因是上邊這行內容是個超鏈接,需要你點擊它之后,才能繼續執行,隨后才會運行到斷點處進行調試。
好了,這個debug設置成功了
附加說明:
1)如果需要修改調試功能的監聽端口,可以在上面第4步輸入以下內容:
-Dmaven.surefire.debug="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -Xnoagent -Djava.compiler=NONE" test
2)build過程會顯示信息:Listening for transport dt_socket at address : 5005 。看到這個提示信息之后,在eclipse中,在Debug Configuration窗口,新建Remote Java Application,port設置為5005,然后點擊“debug”按鈕。之后,剛才的mvn命令將繼續往下執行,直到運行到有斷點的代碼,則停留下來,這時在eclipse中可以調試運行的代碼
3)debug時,顯示source not found
Debug 視圖下
-》在調試的線程上 右鍵單擊
-》選擇Edit Source Lookup Path
-》選擇Add
-》選擇Java Project
選擇相應的Project 進行OK確定即可