【发布时间】:2012-08-07 07:55:45
【问题描述】:
JavaCompiler - 如何以编程方式将-X options 传递给 JavaCompiler 类?
【问题讨论】:
-
您试图通过哪些选项?验证您在执行时没有传递针对 JVM 的选项,而不是编译器。
标签: java compiler-construction javac
JavaCompiler - 如何以编程方式将-X options 传递给 JavaCompiler 类?
【问题讨论】:
标签: java compiler-construction javac
您链接到的JavaCompiler 页面有一些很好的示例。他们使用以下代码行调用编译器:
compiler.getTask(null, fileManager, null, null, null, compilationUnits1).call();
getTask 方法的第四个参数是选项字符串列表(实际上是Iterable<String>,但列表就足够了)。所以你可以这样做:
compiler.getTask(null, fileManager, null,
Arrays.asList("-Xlint:all"),
null, compilationUnits1).call();
【讨论】:
AFAIK Java 编译器在当前 JVM 中运行。如果你想设置-X 选项,你需要为你的程序设置它。
【讨论】: