【问题标题】:remote debugging with tomcat/eclipse, while others are sharing system使用tomcat/eclipse进行远程调试,其他人共享系统
【发布时间】:2011-06-29 09:42:06
【问题描述】:

我已经通过eclipse设置了tomcat进行远程调试,我在tomcat启动脚本中添加了以下配置

导出 JPDA_ADDRESS=9999

导出 JPDA_TRANSPORT=dt_socket

回显 $JPDA_ADDRESS

…….

exec "$PRGDIR"/"$EXECUTABLE" jpda start "$@"

但是,有多个开发人员在此服务器上工作,当我的调试器在我添加的断点处停止时,其他开发人员会卡住,tomcat 中是否有允许其他开发人员在我调试时继续无缝运行应用程序?

【问题讨论】:

    标签: eclipse debugging tomcat


    【解决方案1】:

    正如您让我意识到的那样,您确实需要第二个独立的 tomcat 实例。正如下面评论中强调的那样,JVM 中的调试断点机制会阻止 所有 webapps 到达断点,即使你复制它们(否则无论工作线程的数量如何,每个线程都会冻结并等待或恢复信号)。

    【讨论】:

    • 所以基本上在 /tomcat/webapps 下复制整个应用程序目录以使其看起来像两个不同的应用程序?
    • 是的,您只会冻结正在运行的实例的一个工作线程。否则,只需拥有另一个 tomcat 实例(使用不同的 CATALINA_BASE 来存放您的 web 应用程序)。可能有更好的解决方案,您仍然可以为给定的 web 应用程序拥有多个工作线程,但如果有单例,那就行不通了。
    • 对不起,但是当tomcat启动时,它如何知道在调试模式下运行哪个或从eclipse客户端连接?
    • 你说得对,我的建议是垃圾。在 eclipse 中设置断点会阻止所有 webapps 到达断点。我会马上更正我的答案。
    猜你喜欢
    • 2011-08-14
    • 2014-01-09
    • 2011-12-23
    • 2012-10-17
    • 1970-01-01
    • 1970-01-01
    • 2011-04-19
    • 2013-02-13
    • 2012-09-04
    相关资源
    最近更新 更多