首页 文章

使用Eclipse和tomcat进行远程调试

提问于
浏览
1

我有一个应用程序部署在linux服务器上,有一些ip说11.22.33.44

服务器细节

Java版本 - “1.6.0_14”

IP - 11.22.33.44

当我启动服务器时,我在服务器控制台'-Xrunjdwp上获得以下o / p:transport = dt_socket,server = y,suspend = y,address = 8004'

这意味着我已经设置了在调试模式下启动服务器所需的所有信息

客户端设置(其他Windows 7机器)

对于eclipse上的连接属性,详细信息如下主机:11.22.33.44(如上所述)端口:8004(如上)

我猜每件事都做得很好,但仍然得到了

Failed to connect to remote VM. Connection refused.Connection timed out: connect

错误

从我运行eclipse的客户端机器,我能够ping服务器机器,即11.22.33.44

2 回答

  • 0

    听起来像防火墙问题 . 你可以从给定机器/端口的命令行telnet吗?试试这个:

    telnet 11.22.33.44 8004
    

    如果失败则意味着您的端口未打开 - 您的JVM忽略了参数并且没有侦听该端口,或者有防火墙阻止您访问 . 为了识别它是哪一个,你可以登录运行tomcat的机器

    telnet localhost 8004
    

    如果这成功,则意味着您的jvm正在接受该端口上的远程调试连接,因此问题是您的网络中的防火墙,如果它失败则意味着您没有使用正确的远程调试参数启动JVM .

  • 2

    检查以下内容后,还有另一个错误来源:连接类型 . 因此,对于具有相同问题的其他人,应遵循此问题解决路径:

    • Ping托管应用程序(服务器)的主机 . 如果不成功,请检查您的NIC的一条腿是否与目标主机位于同一网络中 - 如果使用IP而不是主机 .

    • telnet你的主人 . 例如telnet 192.168.0.2 8889 . 如果你可以很快连接,那就没问题了 . 看到连接被拒绝的消息没有成功 . "Connection closed by foreign host"虽然很好 .

    • 现在打开Eclipse并创建远程调试配置 . 输入您之前telneted的相同主机和端口 . 选择连接类型“ Standard (Socket Attach) ” . Caution ,如果在选择框中看到同一个实例中的两个,请同时尝试两者 . 有时其中一个不起作用 .

    这应该做到这一点 . 如果没有,请留言并提供帮助 .

相关问题