部署方式1、程序放在tomcat服务器上运行(亲测可行):
部署方式2、程序直接使用java -jar包的 方式运行(亲测可行):
// 找到对应的jar包目录,执行下面语句即可 (该语句其实就是,上一步骤中的 idea界面中自动显示的: For JDK1.4x 的参数)
java -Xdebug -Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=n -jar mac-test-0.0.1-SNAPSHOT.jar
部署方式3、程序放在liberty服务器上运行(亲测可行):
liberty的方式:
server start XXX //运行项目 XXX是项目的名称
server stop XXX //停止项目
server status XXX //查看项目是否运行
//远程调试 步骤1
server debug XXX //开启debug模式 运行项目
idea 默认debug的端口是 7777
以上三种方法的远程断点调试基本一样,(亲测了 tomcat 甚至不用配置服务器端的运行方式(有时候行,有时候不行),和java -jar),下面以jar包的方式进行操作
公用步骤
步骤0:打包,放到服务器上
(jar包放到服务器上是,推荐一个工具神器:MobaXterm 比xshell好用多了)
步骤1:
步骤2
(我使用的2020的版本和之前的略有不一样 所以以下找了其他版本的idea进行截图)
步骤3
下图注意的点有:红框选中的地方: host写 远程服务器的id地址,端口5005 不用改。蓝框选:你的项目名称(多个模块的项目会出现多个选项,选哪个都无所谓,我发现都能连接成功)
步骤4
步骤5:配置服务器的项目启动方式
很多博客没有此步骤,执行步骤6,时就会被远程服务器拒绝。
###原有的运行项目方式是:
java -jar XXX.jar
###现在在服务器上debug模式运行项目方式是:(针对jdk1.5-1.8的是该命令)
java --agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar XXX.jar
###现在在服务器上debug模式运行项目方式是:(针对jdk1.4的是该命令)已亲测可以用于jdk1.7 jdk1.8
java -Xdebug -Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=n -jar XXX.jar
但已经实践 针对jdk1.4的命令 适用于 jdk1.7 jdk1.8,估计是通用的命令
扩展:
临时使用指定的 项目启动环境:
java -Xdebug -Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=n -jar XXX.jar ---spring.profiles.active=test
临时使用指定 项目加载的配置文件:
java -Xdebug -Xrunjdwp:transport=dt_socket,address=5005,server=y,suspend=n -jar XXX.jar --spring-config.location=./aa.yml
步骤6:启动服务器和idea的链接,就可以断点调试了
链接成功,控制台会输出:Connected to 突然getVm,address:"XXXXXXX",transport:'socket'