首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >JavaCompiler始终为null,JDK版本> 1.8.0

JavaCompiler始终为null,JDK版本> 1.8.0
EN

Stack Overflow用户
提问于 2018-04-07 20:23:09
回答 1查看 150关注 0票数 0

我使用以下方法获得JavaCompiler

代码语言:javascript
复制
System.setProperty("java.home", "/Library/Java/JavaVirtualMachines/jdk-11.jdk/Contents/Home");
javax.tools.JavaCompiler compiler = ToolProvider.getSystemJavaCompiler();

我试过这样做:

jdk1.8.0_144.jdk jdk1.8.0_162.jdk jdk-9.0.4.jdk jdk-10.jdk jdk-11.jdk

对于1.8.0,编译器从不工作,因为缺少以下文件:/Library/Java/JavaVirtualMachines/jdk1.8.0_162.jdk/Contents/Home/lib/currency.data

对于1.8.0之后的每一个JDK,编译器总是为null。

我也只在tools.jar中找到了1.8.0

有没有人知道让JavaCompiler工作的方法,不管是什么idk?

EN

回答 1

Stack Overflow用户

发布于 2018-04-07 21:18:35

确保您的module-info.java文件对jdk.compiler模块有要求:

代码语言:javascript
复制
module myModule {
    requires jdk.compiler;
}

根据getSystemJavaCompiler

如果jdk.compiler模块可用,则此实现返回由该模块提供的编译器,否则返回null

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49711640

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档