tomcat - 在 RHEL 上作为服务运行时如何以 Debug模式启动 Tomcat 6

标签 tomcat tomcat6 rhel6

这应该很容易,但是当 Tomcat 6 在 RHEL 6.1 上作为服务运行时,我无法调试它。

我在/etc/tomcat6/tomcat6.conf 中添加了以下行

JAVA_OPTS="${JAVA_OPTS} -Xdebug -Xrunjdwp:transport=dt_socket,address=8000,server=y,suspend=n"

当我重新启动 tomcat 6 服务时

service tomcat6 restart

命令行指示 Tomcat 关闭并启动,但它没有运行,当我查看 catalina.out 日志时我看到了

ERROR: Cannot load this JVM TI agent twice, check your java command line for duplicate jdwp options.
Error occurred during initialization of VM
agent library failed to init: jdwp

尝试重新启动 Tomcat6 服务时关闭和启动均失败。我必须重新启动 RHEL。

我认为 Tomcat6 可能默认在 Debug模式下运行,但是当我注释掉 tomcat6.conf 中的行并使用 netstat -an 重新启动时,没有显示任何使用端口 8000 或 Tomcat 使用的任何端口。

Tomcat 6 作为服务运行时能否在 Debug模式下运行?

最佳答案

只需检查 Catalina.sh 文件中可用的 PORT number 8000 即可。并检查是否有任何进程在相同的端口号 8000 中运行。

如果有任何进程在同一端口上运行,则停止该进程并运行 jpda。

检查同一地址中的env变量。 catalina.sh 文件的shell 脚本清楚地告诉它使用端口8000 来执行它。

如果您想更改端口地址并在您的.bashrc 文件中设置 作为

导出 JPDA_ADDRESS=8009

并执行命令

$ ./catalina.sh jpda run(普通方法)

如果你已经使用安全管理器运行

$ ./catalina.sh jpda run -security

然后转到Eclipse

转到 -> 调试配置

配置Eclipse进行远程调试

首先,我们必须打开或导入包含我们要调试的应用程序源代码的项目。之后我们必须从 Eclipse 设置调试:

1) 单击工具栏中“调试”按钮(带有错误的按钮)的右侧(指向上方的箭头),然后单击“调试配置...”或在菜单“运行”>“调试”中配置...然后将打开一个具有不同调试配置的新窗口。

调试配置

2) 在左侧菜单中选择“Remote Java Application”,然后点击“New launch configuration”按钮(左上角带有文件夹图标的按钮)。

新调试配置

3) 使用与我们的 Tomcat 实例对应的数据填充配置:

Project: The project we want to debug: it has to contain the source code for the application we want to debug.
Connection Type: Standard (Socket Attach).
Host: IP of the server in which is Tomcat installed.
Port: Port indicated to JVM in address parameter. Port 8000 in our example

Eclipse 不显示任何内容。 eclipse 中没有显示任何更改。

只需在 eclipse 中您需要的地方设置断点,然后在 tomcat 中运行应用程序。

<强>!!!!!!成功 Debug模式将工作!!!!!!!!

恭喜!!!!!

来自 sampath

关于tomcat - 在 RHEL 上作为服务运行时如何以 Debug模式启动 Tomcat 6,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13771112/

相关文章:

android - HttpServletRequest 从我的 httppost 中没有得到任何参数

debugging - Tomcat 关机失败

spring - Tomcat 与 Jetty JNDI 查找

java - 重启嵌入式tomcat

linux - Yum 没有看到任何包裹

linux - RHEL 6.5 上的扭矩安装

linux - 无法在 RHEL 6.4 中设置网络

apache - 在 Windows 中启用 mod_rewrite 以使 .htaccess 正常工作

javascript - dropzone js 上传文件卡在 100%

jsp - 消息 java.lang.IllegalStateException : No output folder