安装了Java11后,用其编译多个Springboot工程,老是失败,后来发现所有工程指定了java版本为java8,于是乎卸载了java11,安装了java8,再去编译。

其中某个工程在之前用java11编译的时候没有任何问题, 但是换成java8后出现了以下错误:

具体信息:

F:\Digital marketing\workspace-scrm\workspace-scrm\wit-gateway-app>mvn clean install package -Dmaven.test.skip=true
[INFO] Scanning for projects...
Downloading from nexus: http://......:8051/repository/maven-public/net/trueland/tcloud/scrm/common-dependencies/3.1-SNAPSHOT/maven-metadata.xml
Downloaded from nexus: http://......:8051/repository/maven-public/net/trueland/tcloud/scrm/common-dependencies/3.1-SNAPSHOT/maven-metadata.xml (621 B at 3.8 kB/s)
[INFO]
[INFO] --------------< net.trueland.tcloud.scrm:tcloud-gateway >---------------
[INFO] Building tcloud-gateway 3.1.0
[INFO] --------------------------------[ jar ]---------------------------------
Downloading from nexus: http://......:8051/repository/maven-public/net/trueland/commons/1.1-SNAPSHOT/maven-metadata.xml
Downloaded from nexus: http://......:8051/repository/maven-public/net/trueland/commons/1.1-SNAPSHOT/maven-metadata.xml (983 B at 16 kB/s)
Downloading from nexus: http://......:8051/repository/maven-public/net/trueland/tcloud/scrm/common-base/3.1-SNAPSHOT/maven-metadata.xml
Downloaded from nexus: http://......:8051/repository/maven-public/net/trueland/tcloud/scrm/common-base/3.1-SNAPSHOT/maven-metadata.xml (996 B at 15 kB/s)
[INFO]
[INFO] --- maven-clean-plugin:3.1.0:clean (default-clean) @ tcloud-gateway ---
[INFO] Deleting F:\Digital marketing\wit-gateway-app\target
[INFO]
[INFO] --- maven-resources-plugin:3.2.0:resources (default-resources) @ tcloud-gateway ---
[INFO] Using 'UTF-8' encoding to copy filtered resources.
[INFO] Using 'UTF-8' encoding to copy filtered properties files.
[INFO] Copying 0 resource
[INFO] Copying 6 resources
[INFO]
[INFO] --- maven-compiler-plugin:3.8.1:compile (default-compile) @ tcloud-gateway ---
[INFO] Changes detected - recompiling the module!
[INFO] Compiling 14 source files to F:\Digital marketing\workspace-scrm\wit-gateway-app\target\classes
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time:  2.305 s
[INFO] Finished at: 2022-01-12T08:43:21+08:00
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project tcloud-gateway: Fatal error compiling: 无效的目标发行版: 11 -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[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 read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException

从网上查了查资料,需要指定Maven的java编译器版本

1. 在Java 8和更早版本中指定Maven的Java编译器

在Java 8 和更早版本开始,可以通过两种方式在Maven POM文件中设置Java编译器版本:

  • 通过Maven Java编译器属性。
  • 通过Maven Java编译器插件。

下面将具体说明这两种在Maven中设置Java编译器版本的方法。

1. Maven Java编译器属性

最简单的方法是通过Maven Java编译器属性。

在我们工程的pom.xml文件中进行设置,这些属性必须包含在POM文件的properties元素中。

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

下面是一个具体的例子:

<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.bruce</groupId><artifactId>wit-example</artifactId><version>0.1.0</version><packaging>jar</packaging><properties><project.build.sourceEncoding>UTF-8</project.build.sourceEncoding><maven.compiler.target>1.8</maven.compiler.target><maven.compiler.source>1.8</maven.compiler.source></properties><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency></dependencies>
</project>

2.Maven Java编译器插件

第二种方式是通过插件:

<build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.6.1</version><configuration><source>1.8</source><target>1.8</target></configuration></plugin></plugins>
</build>

下面是一个具体的例子:

<project xmlns="http://maven.apache.org/POM/4.0.0"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/xsd/maven-4.0.0.xsd"><modelVersion>4.0.0</modelVersion><groupId>com.bruce</groupId><artifactId>wit-example</artifactId><version>0.1.0</version><packaging>jar</packaging><dependencies><dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>4.12</version><scope>test</scope></dependency></dependencies><build><plugins><plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.6.1</version><configuration><source>1.8</source><target>1.8</target></configuration></plugin></plugins></build>
</project>

2. 在Java 9及以后的版本中指定Maven的Java编译器

在Java 9和更高版本中,也要使用插件,但是要用release属性来代替source和target属性。

<plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin</artifactId><version>3.8.0</version><configuration><release>11</release></configuration>
</plugin>

Note: Maven Java编译器插件的版本已从3.6.1更改为3.8.0

Maven编译 Fatal error compiling: 无效的目标发行版: 11相关推荐

  1. Fatal error compiling: 无效的目标发行版: 3.1

    [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-c ...

  2. Fatal error compiling: 无效的目标发行版

    说明:遇到过的问题,整理于此处,望牢记,悉知. 1. 报错明细: on project ***: Fatal error compiling: 无效的目标发行版: 1.8 -> [Help 1] ...

  3. 解决错误Fatal error compiling: 无效的目标发行版: 1.8

    mvn install 报标题错误,两步排查: idea file - setting maven - runner 检查jdk版本是否为1.8 2.确认pom文件配置 <plugin> ...

  4. 关于 Fatal error compiling: 无效的目标发行版: xx 错误解决

    一.问题图例(按步骤排查均可解决,最后一步很容易漏掉) 在执行maven compile编译操作报错(本地环境jdk1.8,maven3.8.1) 1.File -> Project Struc ...

  5. Error:java: 无效的目标发行版: 11解决方案

    我们在使用Idea开发中如果遇到你的JDK版本有"无效的目标发行版: 11"冲突时,要修改以下JDK版本

  6. idea maven报错:avac: 无效的目标发行版: 1.8 解决方法

    本文转自:https://blog.csdn.net/qq_37107280/article/details/73246274 此刻我怀着沉重的心情,写下这个恶心了我4个多小时的解决办法: maven ...

  7. Error:java: 无效的源发行版: 11

    Error:java: 无效的源发行版: 11 1.问题描述 2.原因查找 3.解决办法 3.1 打开IDEA的File-Project Structure设置 3.2 修改Project SDK为自 ...

  8. idea编译工程时出现Error:java: 无效的目标发行版: 1.8

    见图,从上述可以看出工程用的jdk1.7,而idea编译时采用的是1.8版本(应该idea新版本内置的jre是1.8吧,默认编译采用1.8) 修改:如下图 http://blog.csdn.net/l ...

  9. Intellij idea 出现错误 error:java: 无效的源发行版: 11解决方法

    Select the project, then File > ProjectStructure > ProjectSettings > Modules -> sources ...

最新文章

  1. 2021年大数据基础(四):​​​​​​​​​​​​​​​​​​​​​大数据业务分析基本步骤
  2. HttpClient第一章(一)
  3. 读书印记 - 《清醒:如何用价值观创造价值》
  4. android+Unity3D游戏开发之简单的物体运动
  5. php模拟一个简易的mvc模型
  6. 分布式事务中的Base理论
  7. ​Golang 并发编程指南
  8. WPF 中的设备无关单位
  9. javascript写的关于静态页面获取URL传递参数的函数[原创]
  10. 搞IT也不能不懂“五险一金”啊
  11. 23种设计模式之建造者模式
  12. CSS3-变换-过渡-动画
  13. golang笔记(1)-数据库查询结果映射至结构体
  14. CSS3魔法堂:说说Multi-column Layout
  15. 锁存器怎么使用c语言编程,读引脚、读锁存器与读-改-写指令
  16. Ember copy array
  17. 关于VS2017配置OpenCV出现无法打开文件“opencv_ml249d.lib”的解决方案
  18. 解决:java.sql.SQLException: The server time zone value xxxxx is unrecognized or represents more tha
  19. 5316. 竖直打印单词(print-words-vertically)
  20. Self和self的区别

热门文章

  1. c语言控制led闪烁次数,单片机C语言程序设计之定时器控制4个LED滚动闪烁
  2. outlook2010设置msn的邮箱
  3. Book——电力系统可靠性分析
  4. 刀片服务器与机架服务器
  5. 《计算机网络》课程教学大纲
  6. linux 服务器 ssd,linux ssd 优化
  7. 【解决】小米/红米手机 Miui内测版/公测版系统申请通过后没有手动选择安装包按钮
  8. Query on a tree(LCT版)
  9. Coding代码自动同步推送gitee、github
  10. 自媒体人怎么追实时热点热搜榜?3个免费工具来了