在IDEA中修改Maven项目的编译版本

原文:https://blog.****.net/gnail_oug/article/details/77507614

IntelliJ IDEA里面Maven插件,如果pom.xml里面没有设置编译版本,便采用默认的1.5版本,即便安装的JDK是jdk1.7、jdk1.8也是采用1.5版本进行编译。

这样,编译时idea就会报如下警告:

Warning:java: source value 1.5 is obsolete and will be removed in a future release

Warning:java: 源值1.5已过时, 将在未来所有发行版中删除

如下图:

在IDEA中修改Maven项目的编译版本

如果源代码里有接口的实现类且实现的方法上面有@Override注解时,就会直接提示以下错误:

@Override is not allowed when implementing interface method

如下图:

在IDEA中修改Maven项目的编译版本

解决方法

1、在Maven里指定编译版本

由于是Maven没指定编译版本引起的,所以先在pom.xml指定编译版本,添加如下内容指定编译版本(一般情况下版本和所用jdk版本保持一致,如我这里是1.8):

<build>

    <plugins>

        <plugin>

            <groupId>org.apache.maven.plugins</groupId>

            <artifactId>maven-compiler-plugin</artifactId>

            <version>3.1</version>

            <configuration>

                <source>1.8</source>

                <target>1.8</target>

            </configuration>

        </plugin>

    </plugins>

</build>

或者

<properties>

    <maven.compiler.source>1.8</maven.compiler.source>

    <maven.compiler.target>1.8</maven.compiler.target>

</properties>

2、使Maven指定的编译版本生效

一般情况下,在pom.xml指定版本之后,Maven会自动更改之前设置编译版本。如果不自动更改,可通过重新导入Maven或者手动修改设置编译版本的地方。

重新导入Maven的方法

或者在项目或pom.xml文件上右键,点击Maven–>reimport,如下图

在IDEA中修改Maven项目的编译版本