Module
jdk.scripting.nashorn
Package jdk.nashorn.api.tree
Nashorn解析器API提供了将ECMAScript源代码表示为抽象语法树(AST)和解析器来解析ECMAScript源脚本的接口。
使用解析器API用户可以编写Java代码来访问ECMAScript源的解析树表示。 脚本源可以是文件,URL或String。 除非另有说明,否则此包的方法中的null参数会导致抛出NullPointerException。
import jdk.nashorn.api.tree.*; import java.io.File; // Simple example that prints warning on 'with' statements public class Main { public static void main(String[] args) throws Exception { // Create a new parser instance Parser parser = Parser.create(); File sourceFile = new File(args[0]); // Parse given source File using parse method. // Pass a diagnostic listener to print error messages. CompilationUnitTree cut = parser.parse(sourceFile, (d) -> { System.out.println(d); }); if (cut != null) { // call Tree.accept method passing a SimpleTreeVisitor cut.accept(new SimpleTreeVisitor<Void, Void>() { // visit method for 'with' statement public Void visitWith(WithTree wt, Void v) { // print warning on 'with' statement System.out.println("Warning: using 'with' statement!"); return null; } }, null); } } }
- 从以下版本开始:
- 9
-
类摘要 Class 描述 SimpleTreeVisitorES5_1<R,P> 用于ECMAScript版本5.1的TreeVisitor的简单实现。SimpleTreeVisitorES6<R,P> 对于ECMAScript版本6的TreeVisitor的简单实现。 -
枚举摘要 Enum 描述 Diagnostic.Kind 诊断的种类,例如错误或警告。Tree.Kind 列举各种树木。 -
异常摘要 异常 描述 UnknownTreeException Indicates that an unknown kind of Tree was encountered.