程序包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

 

 

 

 

posted @ 2025-05-12 20:00  小祥工作室  阅读(208)  评论(0)    收藏  举报