Nwn*_*Nwn 2 debugging intellij-idea spring-boot
我想用 IntelliJ 调试一个 Spring 启动应用程序。我正在使用 Windows 10。当我使用以下命令运行我的 Spring Boot 项目时,它工作正常。但是调试不起作用。
mvn spring-boot:run -Drun.profiles=dev -Dspring-boot.run.jvmArguments="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=5005"
Run Code Online (Sandbox Code Playgroud)
然后我用 intelliJ 制作了一个远程调试器,如下所示。
但是当我单击调试按钮时,intelliJ 显示以下消息。
运行“RemoteDeBugger”时出错:无法打开调试器端口(本地主机:5005):java.net.ConnectException“连接被拒绝:连接
上述行为的原因是什么以及如何正确进行调试。
上述行为的原因是什么?
您出现此错误是因为您的远程调试器正在寻找侦听端口 5005 的 JVM。
如何正确调试?
您必须首先运行这样的 JVM,我的意思是使用端口 5005。好吧,要做到这一点,您已经有了答案:
mvn spring-boot:run -Dspring-boot.run.jvmArguments="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=5005"
Run Code Online (Sandbox Code Playgroud)
或者
mvn spring-boot:run -Dspring-boot.run.jvmArguments="-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005"
Run Code Online (Sandbox Code Playgroud)
agentlib:jwdp按照文档中的规定使用更好
从 5.0 开始,-agentlib:jdwp 选项用于加载和指定 JDWP 代理的选项。对于 5.0 之前的版本,使用 -Xdebug 和 -Xrunjdwp 选项(5.0 实现还支持 -Xdebug 和 -Xrunjdwp 选项,但较新的 -agentlib:jdwp 选项更可取,因为 5.0 中的 JDWP 代理使用 JVMTI 接口到VM 而不是旧的 JVMDI 接口)。
一切都成功启动后,您可以通过单击debug来启动您配置的远程调试器。
确保您使用的端口与用于运行应用程序的端口相同。
那时您将很适合从断点开始分析您的代码。
| 归档时间: |
|
| 查看次数: |
9016 次 |
| 最近记录: |