【问题标题】:Debugging remote application in Eclipse using Tomcat使用 Tomcat 在 Eclipse 中调试远程应用程序
【发布时间】:2020-03-10 23:02:50
【问题描述】:

我正在尝试在 Eclipse 中调试在 Tomcat 服务器上运行的远程 Java 应用程序。根据我的调试设置方式,我不断遇到两个错误之一。我没有使用任何代理或 VPN,所有代码都在我自己的机器上运行。

我不能展示很多代码,但我可以准确描述我所采取的步骤:

首先,我修改了位于Tomcat的bin目录下startup.bat中的代码:

call "%EXECUTABLE%" start %CMD_LINE_ARGS%改为call "%EXECUTABLE%" jpda start %CMD_LINE_ARGS%

就在这一行之上,我添加了以下 JVM 参数。我不知道它们应该是什么参数,也不知道这是否是放置它们的正确位置,但我只是举了一个例子:

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

在 Eclipse 上,这是我为服务器设置的端口配置:

Tomcat Admin port: 8005
HTTP/1.1: 8080
SSL: 8443
AJP/1.3: 8009

确定服务器运行无误后,我打开运行->调试配置->远程Java应用并设置这些参数,然后点击调试:

Host:localhost
Port:8000

这样做会导致“连接被拒绝”错误。当我将调试配置中的端口号更改为8080或8005时,启动等待20秒,然后返回“连接超时”错误。当我将超时时间增加到 3 分钟时,启动等待 3 分钟,然后返回“连接超时”错误。更改 JVM 设置中的“地址”似乎没有任何区别,无论它设置为 8005 还是 8080。

您对我可以尝试研究的事情有什么建议吗? 谢谢, 内森

【问题讨论】:

  • 如何启动Tomcat?隐式(来自 Eclipse)或显式(通过手动启动 start.bat)?
  • 我从eclipse开始

标签: java eclipse debugging tomcat8


【解决方案1】:

我认为您不必修改开箱即用的任何内容。 如果你想在调试模式下启动你的tomcat,那么从 bin 文件夹运行 "./catalina.sh jpda start" 如果在 mac 或 linux 中运行或运行 "catalina jpda start",

这将以调试模式启动 tomcat,然后您可以尝试将调试器连接到端口 8000。

【讨论】:

  • 我在 Windows 上运行
  • 在这种情况下,您可以执行 catalina.bat 而不是 catalina.sh 步骤保持不变
  • 执行 catalina.bat 会导致它在调试模式下运行,监听端口 8000?或者你是说我必须在cmd中执行catalina.bat jpda start?然后在 Eclipse 中,我只调试该端口和主机名,它会选择断点等?
  • 只需从 bin 文件夹运行 catalina.bat 并从 eclipse 附加远程调试器
  • 当我从 bin 文件夹运行catalina.bat,然后在 Eclipse 调试配置窗口中点击“调试”时,似乎什么也没发生。我根本没有看到任何表明它正在调试的反馈。当我尝试再次点击“调试”时,我收到“连接被拒绝”错误
猜你喜欢
  • 2011-04-19
  • 2013-11-21
  • 2014-08-13
  • 2013-02-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-08-04
  • 2011-12-23
相关资源
最近更新 更多