我在 intelliJ IDEA Ultimate 11.1.4 中打开了两个窗口。让我们称它们为 windowA 和 windowB。在 windowA 中,我在本地运行 Tomcat 7。在 windowB 中,我想运行一个远程 tomcat 配置来调试部署到在 windowA 中运行的 tomcat 实例的代码。为此,我已将这些 VM 选项添加到本地 tomcat 配置中:
-Xdebug
-Xrunjdwp:transport=dt_socket,address=62944,suspend=n,server=y
当我尝试启动 tomcat 时,我收到此错误消息:
ERROR: Cannot load this JVM TI agent twice, check your java command line for duplicate jdwp options.
这是完整的服务器输出:
B:\apache-tomcat-7.0.27\bin\catalina.bat run
ERROR: Cannot load this JVM TI agent twice, check your java command line for duplicate jdwp options.
Using CATALINA_BASE: "C:\Users\dallend\.IntelliJIdea11\system\tomcat\Unnamed_davidswebapp_8"
Using CATALINA_HOME: "B:\apache-tomcat-7.0.27"
Using CATALINA_TMPDIR: "B:\apache-tomcat-7.0.27\temp"
Using JRE_HOME: "B:\java\jdk1.6.0_33"
Using CLASSPATH: "B:\apache-tomcat-7.0.27\bin\bootstrap.jar;B:\apache-tomcat-7.0.27\bin\tomcat-juli.jar"
Error occurred during initialization of VM
agent library failed to init: jdwp
Disconnected from server
我猜想我在这里尝试做的事情是完全不必要的,我真的应该尝试这样的事情:Can IntelliJ debug two war files on the same instance of tomcat?
但我仍然是一个好奇的人,所以我有一些问题:
- 上面的错误消息是什么意思?
- 为什么会出现错误?
- 使用 intelliJ 可以实现我正在尝试做的事情吗?
- 如上所述,我尝试这样做可能只是太愚蠢了,但是有没有什么时候尝试从不同的 IntelliJ 实例远程调试在 IntelliJ 中本地运行的 tomcat 是个好主意?
最佳答案
IntelliJ 可能正在添加他自己的 -Xrunjdwp:
参数来附加他的代理。
如果您查看调试控制台的第一行,您将看到 IntelliJ 构建的命令。
JDWP 当时只支持一种调试器。你必须在两者之间做出选择。在 IntelliJ 之外运行命令应该可以解决这个问题。
关于tomcat - 我可以从不同的 intelliJ 实例远程调试在 intelliJ 中运行的 tomcat 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17843281/