【问题标题】:Tomcat within Eclipse - starting with JPDA enabledEclipse 中的 Tomcat - 从启用 JPDA 开始
【发布时间】:2011-06-19 14:36:01
【问题描述】:

我正在尝试在 Eclipse 中配置的 Tomcat 实例中启动并运行 Web 应用程序以进行调试(以使我的工作流程尽可能自动化)。我正在尝试在 Tomcat JVM 中启用远程调试,并且我已经阅读了两组 VM 参数:

-agentlib:jdwp=transport=dt_socket,address=8000,server=y,suspend=n

或者..

-Xdebug
-Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n

但每当我尝试使用其中任何一个时,我都会在控制台中收到一条错误消息:

虚拟机初始化过程中发生错误
代理库无法初始化:jdwp
错误:无法两次加载此 JVM TI 代理,请检查您的 java 命令行是否有重复的 jdwp 选项。

我不知道我应该在哪里寻找这些其他 - 据说是重复的 - jdwp 选项。这些在哪里配置?我怎样才能让它工作?

【问题讨论】:

    标签: eclipse tomcat jpda


    【解决方案1】:

    如果您已正确设置 Tomcat 以在 Eclipse 实例中启动和停止,那么您应该不必手动设置服务器的调试选项来从 Eclipse 内部调试您的应用程序。当您在 Eclipse 中以调试模式启动 Tomcat 时,调试选项会自动添加到启动过程中。通过在启动配置中手动配置它们,您会导致设置重复,从而导致错误响应。

    为了验证您是否正确设置了服务器,以下是在 Helios 版本中设置 Tomcat 的一些步骤:

    • 如果您的服务器视图未打开,请转到窗口->显示视图->服务器
    • 右键单击服务器窗口并选择新建->服务器
    • 在“选择服务器类型”窗口中选择您要设置的 Tomcat 版本
    • 选择下一步(如果已经配置了服务器运行环境,则“完成”按钮可用)
    • 为您的环境输入服务器名称和安装目录
    • 选择“完成”

    此时,您应该能够在“服务器”窗口中看到新设置的 Tomcat 实例。此时,您可以将应用程序部署到新设置的服务器。要以调试模式启动服务器,您可以从“服务器”窗口中选择可用的调试按钮。一旦服务器启动,IDE 将自动连接以允许调试您部署的应用程序。

    【讨论】:

    • 本例中 JPDA 设置的端口是什么?
    • @DaveOn 我的特定实例 Eclipse 使用以下启动选项“-agentlib:jdwp=transport=dt_socket,suspend=y,address=localhost:53054_”启动tomcat
    • 补充以上内容:此时 Eclipse IDE 已经连接到调试会话。如果您希望能够手动控制调试会话(如果调试 Eclipse JavaEE 项目则不需要),那么您需要使用 JDWP 选项修改 Tomcat 实例的启动设置并使用常规运行启动 Tomcat 实例按钮而不是调试按钮。除非您尝试从启动 Tomcat 服务器的 Eclipse 实例外部调试应用程序,否则没有理由采用这种方法。
    • 非常感谢...我不敢相信我不只是尝试调试模式。我喜欢过度思考的问题。它只是开箱即用!
    猜你喜欢
    • 2014-01-31
    • 1970-01-01
    • 1970-01-01
    • 2015-03-08
    • 1970-01-01
    • 2014-04-24
    • 1970-01-01
    • 1970-01-01
    • 2018-09-11
    相关资源
    最近更新 更多