【问题标题】:tomcat server instance debugging in the eclipseeclipse中tomcat服务器实例调试
【发布时间】:2014-06-03 09:08:33
【问题描述】:

我在eclipse中有如下配置

  1. 从服务器视图创建了一个 tomcat 7.0 服务器实例。
  2. 创建了一个示例web应用并通过maven-tomcat-plugin部署在服务器中并在浏览器中测试(右键启动服务器 从服务器视图中单击服务器并选择开始)
  3. 尝试使用 JPDA 选项在创建的服务器实例中配置远程调试设置,我在服务器设置中添加了 env 变量。
  4. 当我像以前一样从 Eclipse 启动服务器时,我无法将调试器连接到服务器。
  5. 但是当我使用命令提示符直接从安装目录启动时它无缝连接

    catlina.bat jpda 开始

  6. 在那之后我尝试了这个我启动了服务器实例(通过从服务器视图中右键单击服务器启动服务器并选择调试模式)
  7. 我得到了代码中的断点,甚至是热代码替换 工作!!!
任何人都可以解释以下内容吗?
  1. 当我尝试使用 Eclipse 中创建的服务器实例进行远程调试的 jpda 选项时出现什么问题?
  2. 调试选项和热代码替换如何与服务器实例一起使用?这是远程调试还是其他?您能解释一下吗?

【问题讨论】:

    标签: java eclipse debugging tomcat spring-mvc


    【解决方案1】:

    eclipse tomcat 插件在运行时会生成一个单独的 JVM,您可以在 windows 任务列表中确认,在类 unix 系统中使用 ps 或使用 visualVM。

    VM 以调试模式启动,并使用插件本身设置的 JPDA 参数,这就是调试机制的工作方式,它基于 JVM 功能。可以通过JDK自带的visual VM来确认使用了哪些jpda参数。

    我认为您不能覆盖 eclipse 插件为您设置的 JPDA 参数,这就是为什么在第 1 点)它不起作用。对于 2) 它通过远程调试工作,通过自动设置参数并在服务器启动后连接远程调试器使远程调试变得透明。

    【讨论】:

    • 谢谢@jhadesdev。我在哪里可以找到创建的tomcat服务器实例的这些默认设置?。
    • 首先在 eclipse 中以调试模式启动服务器。然后转到命令行,假设你有一个 jdk,输入 jvisualvm 来启动 visualVM。然后你应该在左边的树上看到 tomcat。单击它并检查 JVM 参数选项卡
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-09-09
    • 2015-09-09
    • 1970-01-01
    • 2012-10-13
    相关资源
    最近更新 更多