该系列先容一些java开拓中常用的一些小能力,多小呢,从不会到会只需要一篇文章这么小。这一篇先容如何利用jdk自带的扩展包共同Intellij IDEA实现长途debug。
项目中常常会有呈现这样的问题,会令措施员抓狂:要害代码段没有打印日志,当地情况正常出产情况却又问题…这时候,长途debug大概会启行动用。
1 筹备用于debug的代码
筹备一个RestController用于吸收请求,最后可以通过当地断点验证是否乐成开启了长途debug
@RestController
public class TestController {
@RequestMapping("/test")
public Integer test() {
int i = 0;
i++;
i++;
i++;
i++;
i++;
return i;
}
}
项目利用springboot和maven构建,依赖就省略了,利用springboot提供的maven打包插件,利便我们打包成可运行的jar。
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<configuration>
<executable>true</executable>
</configuration>
</plugin>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
2 利用maven插件打包成jar

3 筹备启动剧本
java -jar -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=64057 remote-debug-1.0-SNAPSHOT.jar
4 设置IDEA

请务必担保长途jar包的代码与当地代码一致!!!
5 验证
生存第4步的设置后,先执行剧本让长途的jar包跑起来,再在IDEA中运行remote-debug

如上便代表毗连运行乐成了
在当地打上断点,会见localhost:8080/test

可以在当地看到仓库信息,大功告成。一行指令便完成了长途调试。