【maven】【idea】通过maven指定JDK版本

文章主要讲述了在IDEA中遇到的问题,即设置的JDK版本在执行Mavenbuild后会自动回滚到1.5。解决方案是在项目的pom.xml中添加maven-compiler-plugin插件配置,明确指定source和target为1.8,以确保Maven使用正确的Java版本进行编译。

一、问题描述

如图:设置了通过idea设置了jdk的版本之后,运行 maven build,或者过一段时间之后,项目的编译 jdk 版本会回到 1.5 版本,再次修改还是回到1.5版本。
在这里插入图片描述

 
 

二、解决方式

This error means that you must not modify the project structure and build configuration like project dependencies, compiler settings, sources/resources directories etc using IDE UI dialogs. Instead, you must do corresponding changes in the Maven pom.xml file.
 
Because otherwise you will loose all such changes made in IDE UI after the project fill be Reloaded by the IDE from the maven build files (pom.xml).

1. 简单地说

Maven使用的默认Java编译器版本是Java 1.5。为了使Maven使用Java编译器的较新版本编译Java代码,需要在项目的POM文件(pom.xml)中显式指定Java编译器。
 

2. pom配置

在项目的父pom下添加插件:

    <!--通过maven设置jdk的版本 防止idea设置jdk版本之后-->
    <build>
        <pluginManagement>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-compiler-plugin</artifactId>
                    <version>3.10.1</version>
                    <configuration>
                        <source>1.8</source>
                        <target>1.8</target>
                        <encoding>UTF-8</encoding>
                    </configuration>
                </plugin>
            </plugins>
        </pluginManagement>
    </build>

 

 
参考
https://blog.youkuaiyun.com/tgvincent/article/details/118089774

### 如何在 IntelliJ IDEA 中为 Maven 项目指定 JDK 版本 在开发过程中,有时会遇到因 JDK 配置不正确而导致的编译错误或运行异常。以下是关于如何在 IntelliJ IDEA 中为 Maven 项目指定 JDK 的指南。 #### 设置全局 JDK 可以通过设置 IDE 默认使用的 JDK 来影响所有新建项目。进入 `File -> Settings -> Build, Execution, Deployment -> Compiler` 页面,在这里可以调整默认的编译器选项[^1]。不过需要注意的是,默认 JDK 只会影响新创建的项目,而不会自动应用到已有的项目上。 #### 单个项目级别的 JDK 设定 对于已经存在的 Maven 项目来说,更推荐单独为其设定合适的 JDK 版本: 1. 打开目标项目; 2. 转至菜单栏选择 `File -> Project Structure...`; 3. 在弹出窗口左侧列表里找到并点击 “Project”,右侧会出现当前项目的 SDK 和语言级别设置区域; 4. 下拉框中挑选所需的 JDK (如果尚未安装,则需先通过 Java 官方网站获取),同时确认所选的语言版本与实际需求相符; 5. 应用更改后关闭对话框即可完成配置。 另外值得注意的一点是,除了上述方法外还需要确保 pom.xml 文件内的 `<properties>` 或者 `<build><plugins>` 部分也正确定义了源码和目标字节码兼容性的 JDK 版本号。例如下面这段 XML 就是用来声明使用 Java 8 进行构建的例子: ```xml <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties> ``` 以上步骤能够有效解决由于 JDK 不匹配引发的各种问题,比如无法解析依赖项或是执行按钮失效等情况。 #### 自动导入功能启用与否的影响 当修改完这些参数之后,请记得重新加载 Maven 工程以使改动生效。有时候可能需要手动触发此过程——右键单击工程名称然后选取 Reload from Disk;或者是借助快捷键 Shift+F9 实现相同目的[^2]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

roman_日积跬步-终至千里

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值