从EclipseIndigo远程调试JBoss AS 7.1
我阅读了一些关于这个主题的指南,并做了以下步骤 这些指南有一些区别,但总的来说是相似的 我做的步骤。从EclipseIndigo远程调试JBoss AS 7.1,eclipse,jboss7.x,remote-debugging,Eclipse,Jboss7.x,Remote Debugging,我阅读了一些关于这个主题的指南,并做了以下步骤 这些指南有一些区别,但总的来说是相似的 我做的步骤。 我编译并部署了我的web项目,并将其部署在JBoss上 7.1在Eclipse中单击在服务器上运行->JBoss AS 7.1 我在Eclipse中停止了JBoss 我取消了这行的注释 JAVA_OPTS=“$JAVA_OPTS-Xrunjdwp:transport=dt_socket,地址=8787,服务器=y,挂起=n” 在$JBOSS\u HOME/bin/standalone.con
JAVA_OPTS=“$JAVA_OPTS-Xrunjdwp:transport=dt_socket,地址=8787,服务器=y,挂起=n”
$JBOSS\u HOME/bin/standalone.conf
文件中
$JBOSS\u HOME/bin/standalone.sh
它没有帮助。您需要在启动JBoss时为JVM添加一些额外的选项。您可以在
standalone.xml
中或通过JAVA\u OPTS
环境变量设置这些参数。这些选项看起来基本相同,但对于这篇文章,我将使用JAVA\u OPTS
。如果您想使用standalone.xml
来配置JVM参数,请阅读JBoss社区论坛上的这篇文章
将此行添加到现有的JAVA\u选项中:
-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n
上面的端口号(8787
)必须与Eclipse设置相匹配(见下文)
最后,您需要告诉Eclipse如何连接到远程进程。在Eclipse中,单击调试按钮的下拉箭头并选择“调试配置”
- 在该对话框中,导航到“远程Java应用程序”,然后单击“新建””按钮
- 在“项目”下,选择包含要调试的代码的项目
- 在“连接类型”下,确保选择了“标准(插座连接)”
- 在连接属性下,确保设置了主机(例如,
localhost
)和端口(必须与JAVA_OPTS
中的端口规范相匹配,在本例中为8787
)
- 单击“源”选项卡,添加包含要调试的代码的任何项目(如果工作区中有其他项目包含主项目以外的代码)
- 在“常用”选项卡中的“在收藏夹菜单中显示””下,选择调试图标,调试工具栏下拉列表中将显示一个方便的dandy图标(名称将与前面的项目设置相同)
如果JBoss已经在运行(使用前面设置的选项),请单击Debug以附加。如果没有,请启动JBoss,然后单击调试以附加
现在,您可以设置断点、单步执行代码等
玩得开心 不要在“standalone.conf”中进行更改,而是在“standalone.conf.bat”中进行更改
从“rem set”行中删除rem,JAVA_OPTS=%JAVA_OPTS%-Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n“”
这对我很有效
-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n