调试maven测试时Intellij idea调试器断开连接
我已通过Intellij Idea按照此链接调试maven测试: 当到达第三步并开始调试时,它已连接但很快断开连接,并且不会在断点处停止。我在Intellij有: 已连接到目标VM,地址:'localhost:5005',传输:'socket' 已断开与目标VM的连接,地址:'localhost:5005',传输:'socket'调试maven测试时Intellij idea调试器断开连接,maven,junit,intellij-idea,Maven,Junit,Intellij Idea,我已通过Intellij Idea按照此链接调试maven测试: 当到达第三步并开始调试时,它已连接但很快断开连接,并且不会在断点处停止。我在Intellij有: 已连接到目标VM,地址:'localhost:5005',传输:'socket' 已断开与目标VM的连接,地址:'localhost:5005',传输:'socket' 有什么想法吗?唯一阻止idea调试Maven目标的是分叉 默认情况下,surefire和spring boot等插件使用的是forking 所以,当您从IDEA开始调
有什么想法吗?唯一阻止idea调试Maven目标的是分叉 默认情况下,surefire和spring boot等插件使用的是forking 所以,当您从IDEA开始调试maven目标时,它会连接到maven,但您真正想要调试的进程与maven进程不同,所以它不会连接 要在surefire插件中防止此类行为,您应该阅读本文: 简言之: 如果使用旧的surefire:
<configuration>
<forkMode>never</forkMode>
</configuration>
<configuration>
<forkCount>0</forkCount>
</configuration>
从未
在new surefire中:
<configuration>
<forkMode>never</forkMode>
</configuration>
<configuration>
<forkCount>0</forkCount>
</configuration>
0
但不太清楚:
<properties>
<test.forkCount>1</test.forkCount>
</properties>
<profiles>
<profile>
<id>debug</id>
<properties>
<test.forkCount>0</test.forkCount>
</properties>
</profile>
</profiles>
<build>
<plugins>
<plugin>
<!-- surefire -->
<configuration>
<forkCount>${test.forkCount}</forkCount>
</configuration>
</plugin>
</plugins>
</build>
1.
调试
0
${test.forkCount}
所以,在IDEA中,您只需要使用目标test创建命名运行配置,并将debug包含到概要文件列表中
但在其他情况下,maven的行为仍然是默认的
其中是附加利润-您可以在单个概要文件中包含整个调试行为
例如,在我的real project调试配置文件中:
mvn-pdebug
,我确信我的环境和进程确实是debug
但是如果我在CI上运行
mvn deploy
,我将获得构建过程的完整堆栈。您的测试成功启动了吗?如果它没有到达任何断点,可能是因为您的代码没有运行。@Guillaume Darmont我在到达测试时使用“mvn test-Dmaven.surefire.debug”运行代码,我在命令行中有:---------------------------------------------------------------T E S T S---------------------------------------------侦听地址为5005的传输dt_套接字,因此我开始使用I idea进行调试,它很快断开连接,命令行仍在“侦听地址为5005的传输dt_套接字”中我也有同样的问题。您设法解决了吗?使用maven surefire debug-Dmaven.surefire.debug-DforkCount=0添加-DforkCount=0对我很有效