我正在尝试附加到IntelliJ中的Maven进程。它会迅速断开连接。
我的多模块Maven项目中有一些junit测试失败。从IntelliJ运行时,这些通过。为了调试Maven测试失败,我使用surefire调试器启动了Maven测试。
MVN测试-Dmaven.surefire.debug = true
进程停止,等待调试器附加到该进程。我可以看到该进程正在侦听5005端口。
netstat -Aan | grep 5005 ba7c205e3d864571 0 tcp4 0 0 * .5005 。听
当我尝试通过运行->附加到进程将进程附加到IntelliJ时,出现错误-'没有要附加的进程'。 因此,我通过运行->编辑配置->'+'->远程创建了调试配置,并将其命名为remote-debug。我保留了所有字段的默认设置
host:localhost 端口:5005 命令行:-agentlib:jdwp = transport = dt_socket,server = y,suspend = n,address = 5005
请注意,上述命令行不可编辑。我不知道它是否应该具有server = y,因为intellij将作为客户端连接到单独的maven进程。
当我尝试调试时,运行->调试远程调试,有时,它会连接到远程VM并测试运行并在命令行中失败,而不会暂停IntelliJ中设置的断点。有时,IntelliJ进程会连接,然后立即断开连接而不会引发任何错误。
有人可以建议我如何将IDE附加到maven surefire进程吗?我不知道我在做什么错。