【问题标题】:Can I remote debug tomcat running in intelliJ from a different instance of intelliJ?我可以从不同的 intelliJ 实例远程调试在 intelliJ 中运行的 tomcat 吗?
【发布时间】:2013-07-24 11:25:41
【问题描述】:

我在 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 是个好主意?

【问题讨论】:

  • 关于这个主题的任何更新?

标签: tomcat intellij-idea tomcat7 remote-debugging jdwp


【解决方案1】:

IntelliJ 可能正在添加他自己的 -Xrunjdwp: 参数来附加他的代理。

如果您查看调试控制台中的第一行,您将看到 IntelliJ 已构建的命令。

JDWP 当时只支持一个调试器。你必须在两者之间做出选择。在 IntelliJ 之外运行命令应该可以解决这个问题。

【讨论】:

    【解决方案2】:

    启用远程调试将无法在调试模式下启动应用程序。 你应该直接运行程序(-Xdebug -Xrunjdwp:transport)。没有配置远程调试,然后通过调试启动程序

    【讨论】:

      猜你喜欢
      • 2011-10-07
      • 2013-02-04
      • 2015-06-18
      • 1970-01-01
      • 2017-02-03
      • 1970-01-01
      • 2017-12-11
      • 2015-11-14
      • 2014-02-06
      相关资源
      最近更新 更多