Maven导入模块重新导入后配置丢失,JDK版本从8变为13如何解决?
可行解决方案
- 优先修改项目
pom.xml配置,显式指定JDK编译版本,从根源避免Maven重新导入时覆盖配置,两种常用配置方式二选一即可:
方式一:通过properties节点配置
方式二:直接配置maven-compiler-plugin插件参数<properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> <maven.compiler.encoding>UTF-8</maven.compiler.encoding> </properties>
配置完成后重新执行Maven导入即可,后续不会再出现版本被覆盖的问题。<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.8.1</version> <configuration> <source>1.8</source> <target>1.8</target> <encoding>UTF-8</encoding> </configuration> </plugin> </plugins> </build> - 检查IDEA全局Maven导入配置:打开
File > Settings > Build, Execution, Deployment > Build Tools > Maven > Importing,将JDK for importer选项修改为JDK 8,避免Maven导入工具默认使用高版本JDK生成配置。 - 检查项目默认JDK配置:打开
File > Project Structure,首先将Project栏下的SDK和Language level都设置为JDK 8对应版本,再检查Modules栏下各模块的默认继承配置是否正确。 - 排查上层配置覆盖:如果项目存在父POM依赖,或者本地Maven的
settings.xml中配置了全局编译版本参数,需要对应修改上层配置,或者在当前项目的POM中显式声明编译版本覆盖上层继承的参数。
内容的提问来源于stack exchange,提问作者Wu-Yikun
相关产品推荐
相关产品推荐

