有时候本地代码没问题但在线上运行会报错,这时候可以使用idea的remote功能调试线上jar包

步骤1
在这里插入图片描述
步骤2:新建remote

在这里插入图片描述步骤3:配置服务器ip和端口 并复制生成的JVM参数供之后使用
在这里插入图片描述步骤4:打jar包,并将生成的jar包放到服务器(必须保证本地代码和线上一致

步骤5: 服务器开放端口。命令如下:

firewall-cmd --add-port=端口号/tcp --permanent

重置防火墙

firewall-cmd --reload

若是阿里云、腾讯云等服务器也需要添加相关安全组

步骤6:启动jar包,无论你的java 命令后面的参数启动有多长 紧跟的java后面加一空格并添加刚才复制的jvm启动命令

# 开启远程调试 address为调试端口
 nohup java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar ./$JAR_NAME > ./test.log 2>&1 &

步骤7:点击debug模式启动
在这里插入图片描述
此时在线上调用功能,如果本地代码中有断点就会进入到本地的断点中。代码中的各种log会在线上日志中打印并不会打印在本地

本文参考于:https://www.cnblogs.com/wscw/p/16976694.html

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐