【问题标题】:How do you debug Maven plugin tests executed with the maven-invoker-plugin?您如何调试使用 maven-invoker-plugin 执行的 Maven 插件测试?
【发布时间】:2013-04-11 15:31:27
【问题描述】:

我想附上一些使用 maven-invoker-plugin 执行的 Maven 插件的测试。如何做到这一点?我似乎找不到任何资源,而且似乎不是简单地做:

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

我的意思是——我可以这样连接,但是当maven-invoker-plugin 启动时,它就在那里。永远...

任何帮助将不胜感激。

【问题讨论】:

    标签: maven


    【解决方案1】:

    您必须知道 maven-invoker-plugin 调用一个单独的 Maven 实例来运行集成测试,例如使用适当的配置选项手动调用 mvn。这就是 maven 坚持的原因...

    您可以将适当的选项放入 invoker.mavenOpts 或 invoker.properties 文件中。 另一种选择是更改 mavenExecuteable 并使用 mvnDebug 而不是 mvn。

    【讨论】:

    • +1:我同意。然而,我认为分叉的 Maven 是在同一个 JVM 中调用的,并且它只是作为常规类调用的。显然,这实际上是在分叉一个单独的进程。
    • 它不是一个单独的类,也不是其他任何东西,它真的很像在命令行上手动调用 mvn(请参阅处理子调用的 maven invoker share component。
    • 非常感谢您提供此信息!
    • 谢谢,invoker.mavenOpts 成功了,但invoker.mavenExecuteable 完全没有用。
    【解决方案2】:

    显然,(在进一步检查 build.log 之后)使用上述方式,它只是因为 Maven 正在等待您第二次连接远程调试器而冻结 - 这次是分叉进程。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-02-11
      • 1970-01-01
      • 1970-01-01
      • 2016-12-06
      • 2020-10-04
      • 2011-12-09
      • 1970-01-01
      相关资源
      最近更新 更多