JDWP调试SpringBoot程序
前言
JDWP(Java Debug Wire Protocol) 是 Java中用于被调试程序和调试器之间通信的协议。被调试程序是要调试的应用程序,而调试器是连接到要调试程序的应用程序或进程。
调试SpringBoot程序
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-loader</artifactId>
</dependency>
启动被调试程序,如果出现no matches found: -agentlib
,将命令中的address=*:5050
改为address=5050
java -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=*:5050 -jar "D:\java\code_resp\github_resp\cnblogs\target\cnblogs-1.0-SNAPSHOT.jar"
IDEA 启动调试器
使用上述方法可以让我们调试SpringBoot的启动代码,如JarLauncher
- 注意,命令行的suspend=y,表示要暂停
参考
Java Application Remote Debugging
Remote Debugging with IntelliJ IDEA