eclipse remote debug

本文介绍了如何在不同操作系统上配置JBoss以支持远程调试,并提供了一个简单的方法来启用8787端口的远程调试。

之前一直在用eclipse的remote debug,今天遇到个问题,在Linux/Sloaries下面配置JVM的-xdebug失败了。解决之后特地来记录下:

假定要监听16000端口作为远程debug端口,那么

win:

.bat中加入

set JAVA_OPTS=%JAVA_OPTS% -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=16000,suspend=n

Linux/Unix:

.sh中加入

 

declare -x JAVA_OPTS="$JAVA_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,server=y,address=16000,suspend=n"

后来才发现,完全没必要,jboss有个run.conf
 # Sample JPDA settings for remote socket debuging
JAVA_OPTS="$JAVA_OPTS -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"

# Sample JPDA settings for shared memory debugging
#JAVA_OPTS="$JAVA_OPTS
-Xrunjdwp:transport=dt_shmem,server=y,suspend=n,address=jboss"
  
将remote socket debuging 打开就可以远程debug 8787端口了
### 在Eclipse中进行Debug运行的配置与教程 在Eclipse中进行调试运行是一项重要的开发技能,以下内容详细说明了如何配置和启动调试模式。 #### 1. 配置调试环境 为了开始调试,需要先创建一个调试配置。右键点击项目或类文件,在弹出的菜单中选择【Debug As】→【Debug Configurations】[^3]。这将打开调试配置窗口。 在调试配置窗口中: - 确保选择了正确的主类(Main Class),这是程序的入口点。 - 设置必要的参数,例如虚拟机参数(VM arguments)和程序参数(Program arguments)。 - 如果项目依赖外部库,确保这些库已正确添加到构建路径中。 #### 2. 设置断点 断点是调试的核心功能之一。双击代码行号区域可以设置或移除断点。当程序运行到断点处时,会暂停执行,允许开发者检查变量状态、调用堆栈等信息[^3]。 方法断点是一种特殊的断点类型,它可以设置在方法的入口或出口位置。即使目标代码没有调试信息,方法断点仍然可以正常工作[^1]。 #### 3. 启动调试 完成配置后,可以通过右键点击项目或类文件,选择【Debug As】→【Java Application】来启动调试模式。此时,Eclipse将切换到调试透视图(Debug Perspective)[^3]。 #### 4. 使用调试工具 在调试透视图中,可以使用以下工具: - **Variables视图**:显示当前作用域内的所有变量及其值。 - **Breakpoints视图**:管理所有设置的断点,包括启用、禁用或删除断点。 - **Console视图**:查看程序的标准输出和错误输出。 - **Debug视图**:显示当前调试会话中的线程和堆栈信息。通过双击堆栈帧,可以跳转到对应的代码位置。 #### 5. 控制程序执行 在调试过程中,可以使用以下按钮控制程序执行: - **Resume(F8)**:继续执行程序,直到遇到下一个断点。 - **Step Over(F6)**:逐行执行代码,不进入方法内部。 - **Step Into(F5)**:逐行执行代码,进入方法内部。 - **Step Return(F7)**:执行完当前方法并返回到调用位置。 如果需要远程调试,可以在调试配置中选择【Remote Java Application】,并设置连接参数,如主机名和端口号[^2]。 ```java public class DebugExample { public static void main(String[] args) { int x = 10; int y = 20; int result = add(x, y); // 设置断点在此处 System.out.println("Result: " + result); } public static int add(int a, int b) { return a + b; // 方法断点可以设置在此处 } } ``` #### 注意事项 - 如果调试时发现某些功能不可用,例如 `display` 功能,可能是因为远程调试的限制[^2]。 - 确保项目的编译选项中启用了调试信息(Generate All Debug Info),否则可能无法正常使用断点功能。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值