IDEA远程执⾏详解
新建⼀个springboot项⽬
新建⼀个java class:
@RestController
public class TestController {
@RequestMapping("/test")
public Integer test() {
int i = 0;
i++;
return i;
}
}
打包:mvn clean package
idea debug⽣成jar包
放到远程服务器上(也可以在本地cmd命令下调试,host为localhost),以Jar包的⽅式执⾏
java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8010-jar demo-0.0.1-SNAPSHOT.jar
其中 -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8010 是在IDEA⾥配置参数时复制过来的。各参数含义如下:transport ⽤于在调试程序和 VM 使⽤的进程之间通讯。
dt_socket 套接字传输。
dt_shmem 共享内存传输,仅限于 Windows。
server=y/n VM 是否需要作为调试服务器执⾏。
address=8010 调试服务器的端⼝号,客户端⽤来连接服务器的端⼝号。
suspend=y/n 是否在调试客户端建⽴连接之后启动 VM 。
当然,也可以在服务器的启动脚本⾥通过添加参数的⽅式执⾏。
IDEA的配置:
添加⼀个Remote
然后开始debug,出现下⾯的信息说明连接成功:
Connected to the target VM, address: '10.193.215.16:8010', transport: 'socket'
访问⽹址:
会发现程序阻塞。进⼊断点,就可以开始调试了。
如果你想修改默认8080服务端⼝,⽐如改成8020,可以在application.properties配置如下:
server.port=8020
然后服务器端启动脚本要加上-Dserver.port=8020 参数:
java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8010-Dserver.port=8020-jar demo-0.0.1-SNAPSHOT.jar
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论