Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tomcat 8在Linux上运行,通过Eclipse建立远程调试连接,但断点不';停不下来_Linux_Eclipse_Windows_Remote Debugging - Fatal编程技术网

Tomcat 8在Linux上运行,通过Eclipse建立远程调试连接,但断点不';停不下来

Tomcat 8在Linux上运行,通过Eclipse建立远程调试连接,但断点不';停不下来,linux,eclipse,windows,remote-debugging,Linux,Eclipse,Windows,Remote Debugging,我尝试远程调试在linux中运行的Tomcat web应用程序 我用以下内容开始了tomcat: JPDA_OPTS="-agentlib:jdwp=transport=dt_socket,address=8111,server=y,suspend=n" 在catalina.sh中: ... ... ... # ----------------------------------------------------------------------------- # O

我尝试远程调试在linux中运行的Tomcat web应用程序 我用以下内容开始了tomcat:

JPDA_OPTS="-agentlib:jdwp=transport=dt_socket,address=8111,server=y,suspend=n"
在catalina.sh中:

...
...
...
      # -----------------------------------------------------------------------------

    # OS specific support.  $var _must_ be set to either true or false.
    cygwin=false
    darwin=false
    os400=false
    case "`uname`" in
    CYGWIN*) cygwin=true;;
    Darwin*) darwin=true;;
    OS400*) os400=true;;
    esac

    JPDA_OPTS="-agentlib:jdwp=transport=dt_socket,address=8111,server=y,suspend=n"

    # resolve links - $0 may be a softlink
    PRG="$0"

    while [ -h "$PRG" ]; do
      ls=`ls -ld "$PRG"`
      link=`expr "$ls" : '.*-> \(.*\)$'`
      if expr "$link" : '/.*' > /dev/null; then
        PRG="$link"
      else
        PRG=`dirname "$PRG"`/"$link"
      fi
    done
...
...
...
然后我用以下内容开始tomcat:

Tomcat/bin > catalina.sh jpda start
当我使用netstat-a | grep 8111时,我得到:

tcp        0      0 *:8111                      *:*                         LISTEN
在windows中,im使用eclipse版本:Mars.1(4.5.1) 我配置了远程调试

按下debug,我看到在服务器中建立了连接 在windows eclipse中,如下所示:

在Linux服务器中,当我执行netstat-a | grep8111时 我明白了:

我在eclipse中设置了断点的分配,源代码是相同的
但是没有断点在弯曲。。。这是一个bug吗?

最后一个屏幕截图保证您已连接到Tomcat。为了在任何断点上停止,您需要练习在其中设置断点的代码。通常只使用你的应用程序就可以了

由于某些原因,Eclipse有时无法设置断点。当它成功设置时,断点上会出现一个小记号,表示它处于活动状态

如果某个特定类尚未加载,或者存在其他一些问题,则断点将没有记号,并将保持不活动状态

确保断点处于活动状态。如果没有,请确保您的项目配置(用于进行调试启动配置的项目配置)与部署到Tomcat的WAR匹配


如果这不起作用,您可能会使用不同的编译选项来构建部署到Tomcat的应用程序,例如,没有行号。尝试在方法而不是指令上设置断点。如果可以的话,在构建的编译步骤中添加调试选项,这样行号也会包括在内。这将允许您在行上设置断点。

谢谢,在我的tomcat中,它没有这个“勾号”,两边的代码都是相同的。也许我错过了一些tomcat配置??当源不相同时,eclipse抛出一些错误消息根据我的经验,当源不相同时,eclipse抛出一些错误消息。在这种情况下,没有错误。当你暂停某个线程时会发生什么?当点击堆栈跟踪时,你能看到源代码吗?我看不到任何连接的东西,但没有连接。现在我在同一台linux服务器上安装了eclipse,我尝试在同一台服务器上调试tomcat,但没有任何运气,可能是我的eclipse版本错误。我已经用更多可能的方法更新了答案问题。见最后一段。
tcp        0      0  linux:8111             my.pc.ip.66:62285          ESTABLISHED