Debugging 在Intellij idea中调试jboss应用程序

Debugging 在Intellij idea中调试jboss应用程序,debugging,jboss,intellij-idea,Debugging,Jboss,Intellij Idea,我正在使用intellijidea和jboss服务器 当我运行它时,它工作正常,但当我调试它时,它会给我: ERROR: transport error 202: connect failed: Connection refused ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510) JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transpo

我正在使用
intellij
idea和
jboss服务器

当我运行它时,它工作正常,但当我调试它时,它会给我:

ERROR: transport error 202: connect failed: Connection refused
ERROR: JDWP Transport dt_socket failed to initialize, TRANSPORT_INIT(510)
JDWP exit error AGENT_ERROR_TRANSPORT_INIT(197): No transports initialized [../../../src/share/back/debugInit.c:690]
FATAL ERROR in native method: JDWP No transports initialized, jvmtiError=AGENT_ERROR_TRANSPORT_INIT(197)
Disconnected from server

问题出在哪里?

确保jboss虚拟机使用调试对话框中显示的参数运行-特别是端口号对我来说似乎不正确。

取消选中pass变量对我来说不起作用。最后,我分别运行jBOSS并在intelliJ中使用“远程jBOSS”配置

为了使调试工作顺利进行,我开始在“standalone.sh”中添加以下行

DEBUG_JAVA_OPTS的值必须从IntelliJ对话框中复制和粘贴。这些行必须在脚本设置“JAVA_OPTS”的位置之后插入到脚本中

更新:


看起来IDE为每个项目生成了一个新的端口号。因此,每次切换项目时都必须编辑standalone.sh文件。希望有人能提出解决方案。

另一种选择可能是在standalone.conf中注释掉'if'语句,如下所示。 注意,添加了第一个$JAVA_OPTS(它是从IntelliJ传入的)。这样就不需要记住更改每个项目的端口号

#Specify options to pass to the Java VM.
#
#if [ "x$JAVA_OPTS" = "x" ]; then
   JAVA_OPTS="$JAVA_OPTS -Xms64m -Xmx512m -XX:MaxPermSize=256m -    Djava.net.preferIPv4Stack=true -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000"
   JAVA_OPTS="$JAVA_OPTS -Djboss.modules.system.pkgs=$JBOSS_MODULES_SYSTEM_PKGS -Djava.awt.headless=true"
   JAVA_OPTS="$JAVA_OPTS -Djboss.server.default.config=standalone.xml"
#else
#echo "JAVA_OPTS already set in environment; overriding default settings with val ues: $JAVA_OPTS"
#fi

如果你在OS X Mountain Lion上运行,你可以尝试在VM选项中弹出-d64,这似乎对我很有用。我认为,不传递变量只会阻止调试


查看更多信息。

我未选中传递变量,然后工作,我不知道是什么问题。谢谢
#Specify options to pass to the Java VM.
#
#if [ "x$JAVA_OPTS" = "x" ]; then
   JAVA_OPTS="$JAVA_OPTS -Xms64m -Xmx512m -XX:MaxPermSize=256m -    Djava.net.preferIPv4Stack=true -Dorg.jboss.resolver.warning=true -Dsun.rmi.dgc.client.gcInterval=3600000 -Dsun.rmi.dgc.server.gcInterval=3600000"
   JAVA_OPTS="$JAVA_OPTS -Djboss.modules.system.pkgs=$JBOSS_MODULES_SYSTEM_PKGS -Djava.awt.headless=true"
   JAVA_OPTS="$JAVA_OPTS -Djboss.server.default.config=standalone.xml"
#else
#echo "JAVA_OPTS already set in environment; overriding default settings with val ues: $JAVA_OPTS"
#fi