如何使 Eclipse AST 解析器与 Java 9 配合使用



我想使用 Eclipse AST 解析器来解析一些 Java 源代码。此代码适用于 Java 8。AST 分析器需要在类路径上rt.jar才能解析代码中的类型,例如class Fo0 {},因为其中有一个隐式extends Object。如果没有传递给 AST 解析器的类路径rt.jar,我会收到警告"某处,使用了 java.lang.Object "并且类型解析失败。

我该如何解决这个问题?我在我的代码中使用依赖 org.eclipse.jdt.core-3.13.0。哪个版本支持 Java 9?

将 JDT Core 依赖项更新到 3.16.0。

之后,AST 将正确解析代码,即使java.lang.Object不再位于解析器类路径上的 JAR 中也是如此。

最新更新