Java 9项目在IntelliJ IDEA中执行maven install报错:tools.jar未找到
解决Java 9迁移后IntelliJ IDEA中Maven编译找不到tools.jar的问题
刚把项目从Java 8迁到Java 9,结果在IntelliJ IDEA里跑mvn install就炸了,提示找不到tools.jar,但命令行里却能正常执行?我之前碰到过类似的情况,给你几个靠谱的解决办法:
1. 升级Maven Compiler Plugin版本
Java 9开始已经移除了tools.jar这个文件,而你用的maven-compiler-plugin:3.7.0版本还是针对Java 8及更早版本设计的,自然会找不到这个文件。建议把插件升级到3.8.0及以上版本(比如3.11.0,兼容性更好),同时明确指定编译的source和target版本为9。
修改项目根目录下的pom.xml里的插件配置:
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.11.0</version> <configuration> <source>9</source> <target>9</target> </configuration> </plugin> </plugins> </build>
2. 检查IntelliJ IDEA的JDK配置是否完全同步
命令行能正常跑,说明系统环境变量没问题,但IDEA可能没正确加载JDK 9的配置,需要逐一检查:
- 项目全局SDK:打开
File → Project Structure,确认Project SDK选择的是jdk-9.0.1,Project language level设置为9 - Modules, private methods in interfaces - 模块SDK:在
Project Structure的Modules选项卡下,确保每个模块的SDK都选择了JDK 9.0.1 - Maven Runner配置:打开
File → Settings → Build, Execution, Deployment → Build Tools → Maven → Runner,把JRE选项改成jdk-9.0.1,不要依赖默认的Use project SDK(有时候会出现配置不同步的问题)
3. 清理IDEA缓存并重启
IDEA的缓存有时候会残留旧的Java版本配置,导致编译异常。直接通过File → Invalidate Caches...,选择Invalidate and Restart,让IDEA彻底清理缓存后重新加载项目。
4. 验证IDEA终端的环境配置
打开IDEA自带的Terminal,执行以下命令确认环境:
java -version mvn -v
确保输出的JDK版本是9.0.1,和系统命令行里的一致。如果不一致,说明IDEA没有正确读取系统环境变量,可以尝试重启IDEA或者手动指定IDEA的JDK路径。
内容的提问来源于stack exchange,提问作者Ohtee94
相关产品推荐
相关产品推荐

