程序包com.sun.tools.javac.util不存在
一、问题描述
import com.sun.tools.javac.util.Pair; public static void main(String[] args) { Pair<String, String> bodyAndHeader new Pair<>(); }

二、问题复现
本地环境 jdk11。idea 开始运行,编译阶段就报错,点击Pair能够进入到jdk的源码预览。
三、问题原因
com.sun.tools.javac.util.Pair 模块没有导出,jdk内部使用。
jdk9之后引入了模块(module)的概念,并且把jdk内部使用类私有化了,不在推荐给外部使用。所以在idea编译的时候是找不到这个类的。
四、问题处理
强制放开该类限制
Settings -> Build,Execution,Deployment -> Compiler -> Java Compiler -> Additional command line parameters: 增加如下参数
--add-exports jdk.compiler/com.sun.tools.javac.util=ALL-UNNAMED
同时也要把对应的版本设置成java11


浙公网安备 33010602011771号