将JDK版本由JDK1.8升级到JDK11引发maven编译错误!!!
一、现象
F:\workspace\XXX>mvn clean package -Dmaven.tes
t.skip
[INFO] Scanning for projects...
[INFO]
[INFO] ---------------------< learning.spring:customei1 >----------------------
[INFO] Building customei1 0.0.1-SNAPSHOT
[INFO] --------------------------------[ jar ]---------------------------------
[INFO]
[INFO] --- maven-clean-plugin:3.2.0:clean (default-clean) @ customei1 ---
[INFO] Deleting F:\workspace\XXX\target
[INFO]
[INFO] --- maven-resources-plugin:3.2.0:resources (default-resources) @ customei
1 ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Using 'UTF-8' encoding to copy filtered properties files.
[INFO] Copying 1 resource
[INFO] Copying 0 resource
[INFO]
[INFO] --- maven-compiler-plugin:3.10.1:compile (default-compile) @ customei1 --
-
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 1 source file to F:\workspace\XXX\target\classes
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.262 s
[INFO] Finished at: 2023-03-26T18:08:07+08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.
10.1:compile (default-compile) on project customei1: Fatal error compiling: 错误: 无效的目标发行版:1.11 -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit
ch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please rea
d the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionE
xception
二、原因
未修改maven的settings.xml文件
修改前:
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">......
<profiles>
<profile>
<id>jdk-1.11</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>1.11</jdk>
</activation>
<properties>
<maven.compiler.source>1.11</maven.compiler.source>
<maven.compiler.target>1.11</maven.compiler.target>
<maven.compiler.compilerVersion>1.11</maven.compiler.compilerVersion>
</properties>
</profile></profiles>
</settings>
修改后:
<?xml version="1.0" encoding="UTF-8"?>
<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd">
......<profiles>
<profile>
<id>jdk-1.11</id>
<activation>
<activeByDefault>true</activeByDefault>
<jdk>11</jdk>
</activation>
<properties>
<maven.compiler.source>11</maven.compiler.source>
<maven.compiler.target>11</maven.compiler.target>
<maven.compiler.compilerVersion>11</maven.compiler.compilerVersion>
</properties>
</profile></profiles>
</settings>
三、问题解决
重新执行maven命令
mvn clean package -Dmaven.test.skip
成功打包:
[INFO] Replacing main artifact with repackaged archive
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5.718 s
[INFO] Finished at: 2023-03-26T18:26:21+08:00
[INFO] ------------------------------------------------------------------------