由于jdwp错误,无法从IntelliJ IDEA运行项目。

21

我在IntelliJ IDEA中有一个项目,我想本地运行它。当我点击它的调试按钮时,它会显示:

ERROR: Cannot load this JVM TI agent twice, check your java command line for duplicate jdwp options.
Disconnected from server
Error occurred during initialization of VM
agent library failed to init: jdwp

我点击运行按钮时它可以工作,问题出在哪里?


1
对于本地应用程序,请检查在配置的“VM参数”中是否重复指定了相同的代理。 - Victor Sorokin
7个回答

45

可能已经晚了,但或许会对其他人有所帮助。答案基于 Aleksei Sosnovski 的支持论坛发帖

当你的 JAVA_OPTS 包含两个 -Xrunjdwp 参数时,就会出现这种情况。例如,其中一个参数可能来自于 IntelliJ 启动容器时调用的服务器启动脚本,另一个则可能由 IntelliJ 本身添加。您可以通过查看在没有调试的情况下启动容器时记录的 JAVA_OPTS 来进行检查。如果你看到了一个 -Xrunjdwp 参数,只需找到它在容器启动脚本中的设置位置,并将其移除。


2
谢谢,这对我很有帮助。我在Intellij中找到了启动脚本,路径为JBoss -> Edit Configuration -> Startup/Connection -> Startup script,并删除了-Xrunjdwp行。 - Niraj Trivedi

7

我猜你已经在调试服务器应用程序了?在这种情况下,连接另一个调试器实例是不可能的。


刚刚它没能正常工作,我在10分钟前尝试过,但是现在它可以了。非常感谢 :) - Elbek

4

很可能问题出现在您在运行配置的“VM参数”字段中指定了调试选项。如果您将其删除,一切都会正常工作。


删除重复的调试配置有所帮助。感谢@yole。 - realPK

2

在我的情况下,我遇到了同样的问题-Xrunjdwp被设置了两次:一次是在IDEA调试配置中,另一次是在系统变量中的CATAALINA_OPTS

当我从系统变量中删除它时(在IDEA中只读),问题就解决了。


1
感谢您的提示,它帮助我解决了问题。我的问题是由于在catalina.bat中设置了DEBUG_OPTS=-agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=5005。请保留HTML标签。

1
  1. check server.xml if you have jvmEntries get rid of that entry from server.xml

    <!-- <jvmEntries xmi:id="JavaVirtualMachine_1" classpath="" bootClasspath="" verboseModeClass="false" verboseModeGarbageCollection="false" verboseModeJNI="false" runHProf="false" hprofArguments="" debugMode="false" debugArgs="-Djava.compiler=NONE -Xdebug -Xnoagent -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=7777" genericJvmArguments="">
    

  2. Open admin console (http://localhost:9060/ibm/console/login.do)

    Application servers > server1 > Debugging service

    un-check Enable service at server startup if checked restart server.

enter image description here


0
在Intellij中,取消“运行/调试配置”中的“传递环境变量”框的勾选。

Run/Debug configuration screenshot


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接