通常,单击堆栈跟踪中的一行,源文件将在有问题的行中打开。使用Eclipse-oxygen(安装了对Java9的支持的R)和Java9(u175)时,如果源位于java模块内部某处,则会显示对话框“找不到源”。在编辑器中导航时(按F3),按预期找到了源。

哪里/哪里出了问题以及如何解决?

以下是一个失败的简单的两层示例,显示了堆栈跟踪:

Exception in thread "main" java.lang.IndexOutOfBoundsException: Index 5 out-of-bounds for length 0
    at java.base/jdk.internal.util.Preconditions.outOfBounds(Preconditions.java:64)
    at java.base/jdk.internal.util.Preconditions.outOfBoundsCheckIndex(Preconditions.java:70)
    at java.base/jdk.internal.util.Preconditions.checkIndex(Preconditions.java:248)
    at java.base/java.util.Objects.checkIndex(Objects.java:372)
    at java.base/java.util.ArrayList.set(ArrayList.java:453)
    at dummy.PlainStacktrace.main(PlainStacktrace.java:10)


两线:

import java.util.ArrayList;

public class PlainStacktrace {

    public static void main(String[] args) {
        ArrayList list = new ArrayList();
        list.set(5, "error");
    }

}

最佳答案

这是bug 518829,应该在最近的版本中解决。

注意:在Java 9和Eclipse支持正式发布之前,最好不仅定期更新JDK,还要定期更新Eclipse部分。

10-07 19:26
查看更多