调试构造函数时出现源代码未找到的错误

3

我是一位有经验的.NET和Visual Studio开发人员,正在尝试转向Java和Eclipse。对于Eclipse,我还是个新手。

我在调试Java程序时遇到了困难。每当我尝试进入构造函数时,"步入"调试功能总是会导致一个"源代码未找到"的错误信息,还有一个"编辑源代码查找路径"按钮。我刚刚安装了Eclipse企业版,并没有更改任何设置。

即使是调试内部类也会出现这个错误。看看这段代码:

public class HelloWorld {   
  public static void main(String[] args) {
        class JustForTesting {
        public String s;
        public JustForTesting() {
        s = "Just a test";
        }
    }   
    JustForTesting n = new JustForTesting();
     System.out.println("Hello World! " + n.s);
  }
}

如果我在第9行设置断点并尝试进入构造函数(第5行),它会显示"源代码未找到"。窗口的标题是Launcher$AppClassLoader(ClassLoader).loadClass(String) line: 24,这太不可思议了,因为显然代码位于同一文件中!

2个回答

5

这不仅仅是Eclipse的问题,而更多是Java的问题。当你第一次构建任何类时,Java需要加载该类。如果你再次遇到这种情况,只需执行一次step-return(这将完成类的加载),然后再执行step-into(这将进入你的构造函数)即可。


谢谢你的帮助!你的建议解决了问题!所以这种行为是设计上的吗?作为一个来自.NET世界的人,我必须说我很惊讶,因为它在调试时增加了很多烦恼。在使用Visual Studio时,我从未遇到过这样的情况。 - Actiyv
我同意这很烦人。使用步骤过滤器有一种方法可以防止它发生。请查看此问题:https://dev59.com/mkvSa4cB1Zd3GeqPiv7_。 - Pace

0

源代码未找到错误下方,你会看到一个"编辑源码查找路径"按钮,点击它,然后点击添加按钮,选择Java项目并包含你的项目... 希望这样能解决你的问题


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接