我看了很多關於調式maven插件代碼的文章,都是不講原理,上來就是一頓操作。結果你們知道,照着文章做,經常會跑不了,會失敗。因為在你本地環境和博主往往是不一樣的。
所以今天我先講下為什么,然后再來操作。
首先maven為我們提供了兩個基礎命令,如下圖
在maven的bin目錄下可以看到一個mvn一個是mvnDebug
我們常用的操作比如mvn clean
如果你想調試mvnDebug clean
那么如何在兩個工程中進行通信debug,java提供了一個叫做Java Debug Wire Protocol (JDWP)的協議
如下圖,是我畫的一個通信主流程,當然這塊應該有很多細節。
明白了上面的操作過程,再來配置,就十分有方向
1、啟動監聽
在你想要處理的代碼項目mvnDebug clean
Listening for transport dt_socket at address: 8000
2、遠程連接
切換到插件工程(自行下載maven的clean插件源碼,java項目),並添加遠程調試配置
3、打斷點並debug
在插件工程代碼打斷點,你想調試的地方,點擊debug,代碼就會請求到斷點。