ubuntu

Java在Ubuntu上如何进行远程调试

小樊
60
2025-10-05 19:40:04
栏目: 编程语言

Java在Ubuntu上进行远程调试的完整步骤

1. 准备工作:安装JDK并验证环境

确保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

2. 启动Java应用并开启远程调试

在启动Java应用时,需添加**JDWP(Java Debug Wire Protocol)**参数以启用远程调试。常用参数组合如下:

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

3. 配置Ubuntu防火墙允许调试端口

若Ubuntu启用了ufw防火墙,需放行调试端口(以5005为例):

sudo ufw allow 5005/tcp  # 允许TCP协议的5005端口
sudo ufw reload          # 重新加载防火墙规则

4. 本地IDE配置远程调试(以IntelliJ IDEA为例)

  1. 打开IntelliJ IDEA,进入Run → Edit Configurations
  2. 点击左上角**+号,选择Remote JVM Debug**;
  3. 配置远程连接信息:
    • Name:自定义配置名称(如“Ubuntu Remote Debug”);
    • Host:远程Ubuntu服务器的IP地址(如192.168.1.100);
    • Port:与启动应用时指定的address端口一致(如5005);
  4. 点击Apply → OK保存配置。

5. 启动远程调试会话

  1. 确保远程Ubuntu上的Java应用已启动(并监听指定端口);
  2. 在IntelliJ IDEA中选择刚创建的远程调试配置,点击工具栏的Debug按钮(绿色虫子图标);
  3. 调试会话启动后,IDE会连接到远程JVM,此时可在代码中设置断点、查看变量、单步执行等。

6. 可选:使用命令行工具jdb调试

若偏好命令行,可使用JDK自带的jdb工具连接远程调试:

jdb -attach 192.168.1.100:5005  # 替换为远程IP和端口

连接后,可通过stop at设置断点、run启动程序、print查看变量等命令进行调试。

注意事项

0
看了该问题的人还看了