Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.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
Java 为什么Eclipse在调试JBoss时跳过行?_Java_Jboss_Jms - Fatal编程技术网

Java 为什么Eclipse在调试JBoss时跳过行?

Java 为什么Eclipse在调试JBoss时跳过行?,java,jboss,jms,Java,Jboss,Jms,我正在尝试调试在后台使用JMS的web服务调用。我让JBoss在调试模式下运行。当我在Eclipse中按F6键(执行当前行)时,会跳过某些行。我有这个方法: @Override public void log(MsgPayload payload) { 1 Date startTime = new Date(); logger.info("Publishing with BufferedPublisher.java start time:"+startTim

我正在尝试调试在后台使用JMS的web服务调用。我让JBoss在调试模式下运行。当我在Eclipse中按F6键(执行当前行)时,会跳过某些行。我有这个方法:

@Override
    public void log(MsgPayload payload) {

    1   Date startTime = new Date();
        logger.info("Publishing with BufferedPublisher.java start time:"+startTime);
    3   publisher.send(payload);
        Date endTime = new Date();
        logger.info("Publishing with BufferedPublisher.java end time:"+endTime);
        long mills = endTime.getTime()-endTime.getTime();
        double secs = mills/1000.0;
        logger.info("Publishing with BufferedPublisher.java total time (seconds):"+secs);
    }
那么会发生什么呢?我在第1行有断点。当我按F6时,它跳过该行并转到第3行。当我再次按F6键时,它将转到方法的末尾。一半的代码从未执行过。。???我的问题是为什么。我假设我的源代码没有很好地连接到正在执行的真实代码,但是我该如何改变这一点呢


谢谢。

当使用调试器查看的源代码与应用程序实际运行的代码版本不同时,通常会发生这种情况。可能以前的版本在第1行和第3行有代码,第2行有空格(或注释),没有其他代码。确保部署了最新的代码(并将调试器配置为指向最新的源代码),然后查看它是否仍然存在。

我刚刚解决了类似的问题。我的java构建路径中有一些配置错误的外部JAR。我修复了它,清理并重建了这个项目。在那之后,一切正常。

我正在运行MyEclipse 9.1,通过更改项目名称目录下的.classpath文件,我的问题得到了解决。我不知道它是如何改变的,但它正在向目标发送热部署


一旦代码被更改为部署到WEB-INF/类,调试器行就同步了,并且都工作得很好

那么,即使我三次检查我有匹配的jar和sources.jar,如果我仍然遇到这个问题呢?如果有必要的话,我将尝试逐步介绍部署在Tomcat6上的SpringMVC包v3.0.5。