[ERROR] 不再支持源选项 6

背景

maven构建报错

复制代码
[ERROR] 不再支持源选项 6。请使用 8 或更高版本。
[ERROR] 不再支持目标选项 6。请使用 8 或更高版本。
[ERROR] -> [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/MojoFailureException
  thrift打包完成!

iTerm执行mvn -v

复制代码
Apache Maven 3.9.6 (bc0240f3c744dd6b6ec2920b3cd08dcc295161ae)
Maven home: /usr/local/Cellar/maven/3.9.6/libexec
Java version: 21.0.1, vendor: Homebrew, runtime: /usr/local/Cellar/openjdk/21.0.1/libexec/openjdk.jdk/Contents/Home
Default locale: zh_CN_#Hans, platform encoding: UTF-8
OS name: "mac os x", version: "14.1.1", arch: "x86_64", family: "mac"

执行ll /usr/local/bin/ | grep mvn,发现指向的是本地安装的maven,而非idea自带的maven

处理方案

先参考https://blog.csdn.net/weixin_44203158/article/details/111478439,修改完之后仍报错

Maven支持的Java version是21.0.1,与Idea的java版本不一样,需要修改成一致的

方案1

修改vim ~/.zshrc

复制代码
export JAVA_HOME=/usr/local/Cellar/openjdk@8/1.8.0-392/libexec/openjdk.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH
export M2_HOME=/usr/local/apache-maven-3.6.3
export PATH=$PATH:$M2_HOME/bin

执行source ~/.zshrc,再看mvn -v,此时Maven的java版本就是环境变量设置的了

执行mvn deploy后仍旧报错javafx.util不存在,原因是:iTerm使用的是OpenJDK,需要改成Oracle JDK

复制代码
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home
export PATH=$JAVA_HOME/bin:$PATH

OpenJDK 不包含 JavaFX,因为 JavaFX 不是 Java SE 的一部分。JavaFX 是 Oracle 的一个商业产品,它在 Oracle JDK 中可用,但并未包含在 OpenJDK 中。如果你需要使用 JavaFX,你可以单独下载并添加到你的项目中。Oracle JDK 8 包含了 JavaFX。但从 JDK 11 开始,JavaFX 被剥离出 Oracle JDK,成为了一个独立的开源项目 OpenJFX。如果你使用 JDK 11 或更高版本,你需要单独下载并添加 JavaFX SDK 到你的项目中。

方案2

把iTerm的maven版本换成idea自带的,通过软连接的方式把idea的maven地址链接到/usr/local/bin/mvn【参考:https://blog.csdn.net/MrYushiwen/article/details/107687576】

复制代码
sudo ln -s /Users/jiayueyuanfang/Library/Application\ Support/JetBrains/Toolbox/apps/IDEA-C/ch-0/232.10203.10/IntelliJ\ IDEA\ CE.app/Contents/plugins/maven/lib/maven3/bin/mvn /usr/local/bin/mvn

然后修改vim ~/.zshrc

复制代码
export MAVEN_HOME=/Users/jiayueyuanfang/Library/Application\ Support/JetBrains/Toolbox/apps/IDEA-C/ch-0/232.10203.10/IntelliJ\ IDEA\ CE.app/Contents/plugins/maven/lib/maven3
export PATH=$PATH:$MAVEN_HOME/bin

执行source ~/.zshrc,再执行mvn -v,发现Maven home已经更换

复制代码
Apache Maven 3.9.2 (c9616018c7a021c1c39be70fb2843d6f5f9b8a1c)
Maven home: /Users/jiayueyuanfang/Library/Application Support/JetBrains/Toolbox/apps/IDEA-C/ch-0/232.10203.10/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3
Java version: 1.8.0_181, vendor: Oracle Corporation, runtime: /Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "mac os x", version: "10.16", arch: "x86_64", family: "mac"

再执行ll /usr/local/bin/ | grep mvn,已经软链接到idea的地址

复制代码
lrwxr-xr-x  1 root            wheel   160B 12 11 20:38 mvn -> /Users/jiayueyuanfang/Library/Application Support/JetBrains/Toolbox/apps/IDEA-C/ch-0/232.10203.10/IntelliJ IDEA CE.app/Contents/plugins/maven/lib/maven3/bin/mvn
相关推荐
岁岁种桃花儿5 小时前
CentOS7 彻底卸载所有JDK/JRE + 重新安装JDK8(实操完整版,解决kafka/jps报错)
java·开发语言·kafka
roman_日积跬步-终至千里6 小时前
【Java并发】Java 线程池实战:警惕使用CompletableFuture.supplyAsync
java·开发语言·网络
毕设源码-钟学长6 小时前
【开题答辩全过程】以 基于Springboot的扶贫众筹平台为例,包含答辩的问题和答案
java·spring boot·后端
CodeSheep程序羊6 小时前
拼多多春节加班工资曝光,没几个敢给这个数的。
java·c语言·开发语言·c++·python·程序人生·职场和发展
我是咸鱼不闲呀7 小时前
力扣Hot100系列19(Java)——[动态规划]总结(上)(爬楼梯,杨辉三角,打家劫舍,完全平方数,零钱兑换)
java·leetcode·动态规划
加油,小猿猿7 小时前
Java开发日志-双数据库事务问题
java·开发语言·数据库
yuluo_YX7 小时前
Reactive 编程 - Java Reactor
java·python·apache
山岚的运维笔记8 小时前
SQL Server笔记 -- 第20章:TRY/CATCH
java·数据库·笔记·sql·microsoft·sqlserver
南极企鹅8 小时前
springBoot项目有几个端口
java·spring boot·后端
清风拂山岗 明月照大江8 小时前
Redis笔记汇总
java·redis·缓存