Idea远程调试Linux服务器(和docker容器)中的Java服务,实测可用

本文详细指导如何在IntelliJIDEA中配置和远程调试Linux服务器和Docker容器中的Java应用程序,包括开启jdwp调试选项,本地配置步骤以及解决常见问题如防火墙设置。

目录

idea远程调试linux上的java服务

idea远程调试linux上docker中的java服务

本地配置

打开设置

添加Remote


环境:java1.8

idea远程调试linux上的java服务

在远程Linux服务器上启动Java应用程序时,请使用以下命令行选项启用调试:

java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar yourapp.jar

这将启动Java应用程序并在5005端口上启用调试功能

idea远程调试linux上docker中的java服务

在Docker容器中运行Java应用程序时,请使用以下命令行选项启用调试:

java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005 -jar yourapp.jar

这将启动Java应用程序并在5005端口上启用调试功能

如确认防火墙无问题还是无法连接, 或者启动docker容器报错

iptables failed: iptables --wait -t nat -A DOCKER -p tcp -d 0/0 --dport

试试重启docker,systemctl restart docker

无意间看到java9是address=*:5005, 未尝试

本地配置

打开设置

在本地机器上,使用IDE(例如IntelliJ IDEA)打开Java应用程序的项目。在IDE中配置远程调试。在IntelliJ IDEA中,请转到“Run”菜单,然后选择“Edit Configurations”。

添加Remote

单击“+”按钮添加新的远程调试配置。在“Host”字段中输入远程Linux服务器的IP地址或主机名,在“Port”字段中输入5005。

设置如下

保存配置并启动调试会话。在IntelliJ IDEA中,请单击“Run”菜单中的“Debug”按钮。

在调试会话期间,您可以在IDE中设置断点,查看变量和堆栈跟踪,并在远程Linux服务器上(Docker容器中)执行代码。

请注意,您需要在远程Linux服务器上(Docker容器)安装Java开发工具包(JDK),以便在运行Java应用程序时使用调试选项。另外,确保远程服务器的防火墙允许5005端口的传入连接。

连接成功后会输出以下日志, address显示未远程地址

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

瑶山

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值