确保Ubuntu系统已安装Java Development Kit (JDK)(建议使用OpenJDK 8及以上版本),并通过以下命令验证安装:
sudo apt update
sudo apt install openjdk-11-jdk # 或default-jdk(自动适配版本)
java -version # 确认输出包含JDK版本信息
若未配置JAVA_HOME环境变量,可通过编辑~/.bashrc文件添加:
echo "export JAVA_HOME=/usr/lib/jvm/default-java" >> ~/.bashrc
echo "export PATH=\$JAVA_HOME/bin:\$PATH" >> ~/.bashrc
source ~/.bashrc
在启动Java应用时,需添加**JDWP(Java Debug Wire Protocol)**参数以启用远程调试。常用参数组合如下:
java -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=*:5005 -jar your-application.jar
transport=dt_socket:使用Socket传输协议(最常用);server=y:当前JVM作为调试服务器,等待客户端连接;suspend=n:应用启动后不暂停(若设为y,则需等待调试器连接后才启动);address=*:5005:监听所有网络接口的5005端口(可替换为其他端口,如*:8000)。若Ubuntu启用了ufw防火墙,需放行调试端口(以5005为例):
sudo ufw allow 5005/tcp # 允许TCP协议的5005端口
sudo ufw reload # 重新加载防火墙规则
192.168.1.100);address端口一致(如5005);若偏好命令行,可使用JDK自带的jdb工具连接远程调试:
jdb -attach 192.168.1.100:5005 # 替换为远程IP和端口
连接后,可通过stop at设置断点、run启动程序、print查看变量等命令进行调试。
ping命令验证);5006、8000)。