2

我阅读了有关该主题的一些指南并采取了以下步骤。

http://oreilly.com/pub/a/java/archive/eclipse-jboss-remote-debug.html?page=8 https://community.jboss.org/thread/177687 Eclipse 中的 JBoss 调试

这些指南有一些区别,但总的来说它们是相似的。

我做的步骤。

  1. 我编译并部署了我的 web 项目,并通过在 Eclipse 中单击Run on Server -> JBoss AS 7.1将其部署在 JBoss AS 7.1 上。
  2. 我在 Eclipse 中停止了 JBoss AS。
  3. 我取消了该行的注释

    JAVA_OPTS="$JAVA_OPTS -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"

$JBOSS_HOME/bin/standalone.conf文件中

  1. 我执行了$JBOSS_HOME/bin/standalone.sh
  2. 我在浏览器中更新了页面 localhost:8080/MyProject/ 并且它有效
  3. 我在 Eclipse 中执行了Debug -> Debug Configurations,然后我创建了一个新配置,其中 localhost 作为主机,8787 作为端口,MyProject 作为项目名称。
  4. 我按下了 Eclipse 中的调试按钮。

当我到达我添加的断点时,什么也没有发生。

我预计 Eclipse 会像在简单的 Java 应用程序项目中那样在断点处停止。我做错了什么?

Eclipse 版本:靛蓝。

爪哇。

java version "1.6.0_43"
Java(TM) SE Runtime Environment (build 1.6.0_43-b01)
Java HotSpot(TM) 64-Bit Server VM (build 20.14-b01, mixed mode)

编辑#1。

  1. 窗口 -> 首选项 -> Java -> 已安装的 JRE
  2. 编辑正在使用的 JRE
  3. 编辑“默认 VM 参数”行

    -XX:+UseParallelGC

它没有帮助。

4

2 回答 2

3

不要在 "standalone.conf" 中进行更改,而是在"standalone.conf.bat"进行更改。

从 " rem set "JAVA_OPTS=%JAVA_OPTS% -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n"" 行中删除rem。

这对我有用。

于 2015-01-20T06:07:08.690 回答
2

您将需要使用 JVM 的一些额外选项来启动 JBoss。您可以在 中standalone.xml或通过JAVA_OPTS环境变量设置这些。选项看起来基本相同,但对于这篇文章,我将使用JAVA_OPTS. 如果您想用来standalone.xml配置 JVM 参数,请阅读 JBoss 社区论坛上的这篇文章。

将此行添加到您现有的JAVA_OPTS

-Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,address=8787,server=y,suspend=n

上面的端口号 ( 8787) 必须与您的 Eclipse 设置相匹配(见下文)。

最后,您需要告诉 Eclipse 如何连接到远程进程。在 Eclipse 中,单击Debug按钮的下拉箭头并选择“<strong>Debug Configurations”。

  • 在该对话框中,导航到“<strong>Remote Java Application”并单击“<strong>New”按钮。
  • 在“<strong>Project”下选择包含您要调试的代码的项目。
  • 在连接类型下确保选择了“<strong>Standard (Socket Attach)”。
  • 在 Connection Properties 下,确保设置了主机(例如localhost)和端口(必须与 中的端口规范相匹配JAVA_OPTS,在这种情况下8787为 )。
  • 单击“<strong>Source”选项卡并添加任何包含您要调试的代码的项目(如果您的工作区中有其他项目包含除主项目之外的代码)。
  • 在 Common 选项卡中,在“<strong>Display in favorites menu”下选择 Debug 图标,一个方便的花花公子图标将出现在您的 Debug 工具栏下拉菜单中(名称将与之前的 Project 设置相同)。

如果 JBoss 已经在运行(使用之前设置的选项),请单击 Debug 进行附加。如果没有,请启动 JBoss,然后单击Debug进行附加。

现在您可以设置断点、单步执行代码等。

玩得开心!

于 2014-01-22T22:40:34.793 回答