您现在的位置是:首页 >学无止境 >Maven项目中出现【不再支持目标选项 1.5】的解决办法网站首页学无止境

Maven项目中出现【不再支持目标选项 1.5】的解决办法

双人与余 2023-06-03 16:00:03
简介Maven项目中出现【不再支持目标选项 1.5】的解决办法

1 快速解决【单项目】

本方法只适用于单个项目,新建项目使用maven还会出现问题。
在pom.xml配置:

    <properties>
        <maven.compiler.source>11</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    </properties>

2 全项目解决

修改 maven的安装目录/conf/settings.xml:
这里使用jdk 1.8举例:

    <profile>
      <id>JDK-1.8</id>
      <activation>
        <activeByDefault>true</activeByDefault>
        <jdk>1.8</jdk>
      </activation>
      <properties>
        <maven.compiler.source>1.8</maven.compiler.source>
        <maven.compiler.target>1.8</maven.compiler.target>
        <maven.compiler.compilerVersion>1.8</maven.compiler.compilerVersion>
      </properties>
    </profile>

效果如下:
在这里插入图片描述

3 再次修改单个项目

在修改maven的配置文件后,默认的maven项目都是1.8
有些项目如果想使用其它版本如11、17是做不到。

比如在idea中修改模块的语言级别,会提示重新导入maven会失效:
在这里插入图片描述

刷新maven后,果不其然又回到1.8了:
在这里插入图片描述

此时需要配置pml.xml:

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.10.1</version>
                <configuration>
                    <source>11</source>
                    <target>11</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
        </plugins>
    </build>

注意:此时使用第一种办法是无效的!IDEA的模块界面的语言级别并不会变!
就算使用第一种方法的代码,也需要配合上述代码:

    <properties>
        <maven.compiler.source>11</maven.compiler.source>
        <maven.compiler.target>11</maven.compiler.target>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <java.version>11</java.version>
    </properties>
    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.10.1</version>
                <configuration>
                    <source>${java.version}</source>
                    <target>${java.version}</target>
                    <encoding>${project.build.sourceEncoding}</encoding>
                </configuration>
            </plugin>
        </plugins>
    </build>

修改pom.xml,重新刷新maven,可以发现语言级别也变了:
在这里插入图片描述

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。