【问题标题】:Source not found when debugging constructor调试构造函数时找不到源
【发布时间】:2011-07-24 15:07:08
【问题描述】:

我是一位经验丰富的 .NET 和 Visual Studio 开发人员,正在尝试切换到 Java 和 Eclipse。我是 Eclipse 的新手。

我很难调试我的 Java 程序。每当我尝试进入构造函数时,“进入”调试功能总是会导致“找不到源”错误消息和“编辑源查找路径”按钮。我刚刚安装了 Eclipse Enterprise Edition,没有搞乱任何设置。

即使调试内部类也会导致此错误。考虑这段代码:

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 行),它会显示 "Source not found"。窗口的标题是Launcher$AppClassLoader(ClassLoader).loadClass(String) line: 24 太不可思议了,因为代码显然驻留在同一个文件中!

【问题讨论】:

    标签: java eclipse debugging


    【解决方案1】:

    与其说是 Eclipse,不如说是 Java。当您第一次构造任何类时,Java 需要加载该类。如果您再次遇到这种情况,只需执行 step-return(这将完成加载类),然后再次执行 step-into(这将进入您的构造函数)。

    【讨论】:

    • 感谢您的帮助!你的建议成功了!所以这种行为是设计使然??来自 .NET 世界,我必须说我很惊讶,因为它在调试时增加了很多烦恼。我从未使用 Visual Studio 经历过类似的事情。
    • 我同意这很烦人。有一种方法可以使用步骤过滤器来防止它发生。看看这个问题:stackoverflow.com/questions/2268902/eclipse-step-into-debugging
    【解决方案2】:

    就在 Source not found 错误下方,您将看到“Edit Source Lookup Path”按钮单击它,然后单击 Add 按钮,然后单击 Java Project 并包含您的项目。 . 希望这能解决你的问题

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-02-15
      • 1970-01-01
      • 2010-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-09-15
      • 1970-01-01
      相关资源
      最近更新 更多