首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用IntelliJ远程调试Tomcat 7

用IntelliJ远程调试Tomcat 7
EN

Stack Overflow用户
提问于 2016-09-26 12:52:27
回答 1查看 4K关注 0票数 3

我在10.0.1.62:8080/xxx.上运行了一个web应用程序。我想通过IntelliJ IDEA远程调试。我设置了JAVA_OPTS = -agentlib:jdwp=transport=dt_socket,server=y,suspend=n,address=8000

在10.0.1.62机器(Ubuntu上的Tomcat7)上,当我点击远程调试按钮时,IDE提供了一条信息消息:

连接到目标VM,地址:“10.0.1.62:8000”,传输:“套接字”

比我在10.0.1.62:8080/xxx.上虽然我得到了这条成功的信息,但短点没有命中。我错过了什么?

EN

回答 1

Stack Overflow用户

发布于 2016-09-26 19:18:55

首先,通过引用以下问题和答案,再次检查您的设置:Remote Debugging in IntelliJ Tomcat

从你的提问来看,听起来你已经遵循了这些步骤。在过去,还有一些其他配置问题给我带来了远程tomcat调试的问题,我将分享这些问题,并希望它能有所帮助。

  1. 确保您在IntelliJ上启动了正确的远程调试过程。

  1. 如果主机上运行多个Tomcat服务器,请确保连接到正确的Tomcat实例。调试端口8000可能已经在使用。我使用的是任意端口15019或其他端口号尚未使用。确保使用的端口在Tomcat和IntelliJ之间匹配。
  2. 取决于您如何在Tomcat上安装远程调试,它可能不会正确关闭,从而使一个旧实例继续运行。在catalina.sh顶部添加调试挂钩将导致shutdown.sh脚本失败,因为调试端口已经绑定到Tomcat服务器。相反,将其放在start语句中: elif [ "$1" = "start" ] ; then JAVA_OPTS="$JAVA_OPTS -Xdebug -Xrunjdwp:transport=dt_socket,address=15019,suspend=n,server=y"

修复此问题后,您可以成功地关闭Tomcat,然后使用./startup.sh进行调试。

  1. 确保在Tomcat上有一个干净的应用程序部署。您的清理过程可能需要更改,但以下是一般的想法: Shutdown Tomcat, then verify it is no longer running. Remove the deployed war file and corresponding exploded version from your tomcat webapps directory. Remove the contents of the work and temp directories. Deploy and verify your recently build war file. Start Tomcat.

为此创建一个脚本将节省时间。

  1. 如果所有其他操作都失败了,那么添加一个调试日志,以重新检查正在调用的断点的代码。

我相信还有二十件事可能会出错。可以自由地添加想法。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39703392

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档