2013-04-11 87 views
4

我想附上一些正在執行maven-invoker-plugin的Maven插件的測試。如何做到這一點?我似乎無法找到任何資源,它似乎並沒有被簡單地做:如何調試使用maven-invoker-plugin執行的Maven插件測試?

MAVEN_OPTS="-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=9001" mvn clean install 

我的意思是 - 我可以連接這種方式,但是當maven-invoker-plugin開始,它只是坐在那裏。永遠...

任何幫助,將不勝感激。

回答

7

您必須知道,maven-invoker-plugin會調用一個單獨的Maven實例來運行集成測試,如使用適當的配置選項手動調用mvn。這就是爲什麼行家支...

你可以把相應的選項進入invoker.mavenOpts或成invoker.properties文件的原因。 另一種選擇是更改mavenExecuteable並使用mvnDebug而不是mvn。

+1

+1:我同意。不過,我認爲分叉的Maven是在同一個JVM中調用的,並且它只是作爲一個普通類被調用。顯然,這實際上是分道揚a的​​過程。 – carlspring 2013-04-11 22:36:32

+2

它不是一個單獨的類,也沒有其他任何東西,它真的像在命令行上調用mvn manualy(請參閱[maven invoker share component](http://maven.apache.org/shared/maven-invoker/usage.html)),它處理子調用 – khmarbaise 2013-04-12 06:11:10

+1

非常感謝您提供此信息! – carlspring 2013-04-12 09:05:40

0

顯然,(在進一步檢查build.log後)採用上述方式,它會凍結,因爲Maven正在等待您第二次連接遠程調試器 - 這次是分叉進程。