安装Oracle JDK17后lib目录缺少tools.jar,运行代码报错如何解决?
问题原因说明
你没有操作错误,tools.jar从JDK 9版本开始就被官方彻底移除了,你安装的JDK 17属于后续高版本,自然不存在这个文件。
Java 9引入了Java平台模块系统(JPMS),原本存放在tools.jar里的工具类、编译相关资源都被拆分到了不同的内置模块中,不再以单独jar包的形式提供。
报错解决方案
你碰到的Error:Cannot determine path to 'tools.jar' library for 17报错,是触发报错的程序还在按照JDK 8及更早版本的目录结构查找文件,可根据你的使用场景对应处理:
- 如果是IDE(IDEA、Eclipse等)报的错,先将IDE升级到支持JDK 17的最新版本,旧版本IDE未适配高版本JDK的目录结构,升级后重新将项目的SDK配置为当前安装的JDK 17即可解决
- 如果是自己维护的旧项目/使用的第三方依赖强依赖
tools.jar,要么将项目/依赖升级到适配JDK 9+的版本,要么临时切换使用JDK 8版本,只有JDK 8及更早的JDK版本才包含tools.jar
你给出的Java版本信息确认你安装的是官方正版JDK 17,不存在误装JRE、环境变量配置错误的问题,无需再反复尝试重新安装安装包。
>java --version java 17 2021-09-14 LTS Java(TM) SE Runtime Environment (build 17+35-LTS-2724) Java HotSpot(TM) 64-Bit Server VM (build 17+35-LTS-2724, mixed mode, sharing)
内容的提问来源于stack exchange,提问作者Va_M
相关产品推荐
相关产品推荐

