Intellij不会使用调试器在域模式下启动jboss服务器。我可以正常启动,但不能使用调试器启动。我可以使用调试器以独立模式启动它。当我使用intellij调试器以域模式启动时,出现以下错误
[主机控制器]本机方法中的致命错误:JDWP没有初始化传输,jvmtiError = AGENT_ERROR_TRANSPORT_INIT(197) [主机控制器]错误:传输错误202:连接失败:连接被拒绝 [主机控制器]错误:JDWP传输dt_socket初始化失败,TRANSPORT_INIT(510) [主机控制器] JDWP退出错误AGENT_ERROR_TRANSPORT_INIT(197):没有初始化传输[debugInit.c:750]
我可以在命令行上启动jboss服务器,并附加来自intellij的远程调试器,但是我宁愿通过intellij进行所有操作。所以我宁愿从intellij进行部署和调试
从查看错误开始,我认为问题是因为在域模式下,主机控制器首先启动,但是调试字符串适用于直到后来才启动的服务器实例。然后,Intellij尝试附加调试器,但服务器未运行,因此无法附加任何东西,然后失败。反正还有吗?
答案 0 :(得分:0)
在评论后进行编辑。
如果需要在部署之前启动工具,则可以在配置的“部署”选项卡中进行。
在“启动前”部分中点击+图标:
选择外部工具并使用+添加新命令
定义您的程序开始
您应该在“部署”选项卡中看到外部工具,并且应该在调试开始之前执行命令。
答案 1 :(得分:0)
我设法使用以下 intellij+wildfly 设置在域模式下使用 intellij wildfly 调试。
在wildfly domain.xml 上,添加{
"state":"7",
"close_code":"Closed/Resolved by Caller",
"close_notes":"blabla"
}
端口和所选服务器上的调试配置:
<jvm>
在intellij上运行配置,在<server-group name="serverGroupXYZ" profile="profileXYZ">
<!-- jvm tag to add -->
<jvm name="Debug">
<jvm-options>
<option value="-agentlib:jdwp=transport=dt_socket,address=8777,server=n,suspend=n"/>
</jvm-options>
</jvm>
<!-- rest of your existing server-group content... -->
下: