Maven項(xiàng)目打包錯(cuò)誤 org/springframework/boot/maven/RepackageMojo has been compiled by a more recent version of the Java
具體出錯(cuò)原因請(qǐng)看原因分析
項(xiàng)目場(chǎng)景:
項(xiàng)目中執(zhí)行clean,再執(zhí)行install時(shí)報(bào)錯(cuò),錯(cuò)誤如下
org/springframework/boot/maven/RepackageMojo has been compiled by a more recent version of the Java Runtime (class file version 61.0), this version of the Java Runtime only recognizes class file versions up to 52.0
————————————————————————————————————————————
問(wèn)題描述
org/springframework/boot/maven/RepackageMojo是由較新版本的Java Runtime(類文件版本61.0)編譯的,該版本的Java運(yùn)行時(shí)只能識(shí)別52.0以下的類文件版本
————————————————————————————————————————————
原因分析:
通過(guò)對(duì)應(yīng)表可知,這個(gè)文件是由java 17版本編譯的,而現(xiàn)在系統(tǒng)中只能識(shí)別java 8以下的版本,java版本不一致導(dǎo)致打包失敗,需要在出錯(cuò)的模塊的打包插件中設(shè)置一個(gè)版本就好了
java對(duì)應(yīng)表
49 = Java 5
50 = Java 6
51 = Java 7
52 = Java 8
53 = Java 9
54 = Java 10
55 = Java 11
56 = Java 12
57 = Java 13
58 = Java 14
上面是出錯(cuò)的截圖,有兩個(gè)地方需要確認(rèn)
下面那個(gè)可以看到是哪個(gè)模塊出現(xiàn)的問(wèn)題上面那個(gè)可以看到,打包插件中spring-boot的版本是未知的,這就導(dǎo)致引用最新的版本,造成不一致的問(wèn)題
————————————————————————————————————————————
解決方案:
找到出錯(cuò)模塊的pom文件,設(shè)置一下打包插件的版本,和其他模塊保持一下,重新刷新一下maven,再次打包就可以了
文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-839892.html
總結(jié):
因?yàn)橹坝行┠K的打包插件的版本也沒(méi)有添加是可以正常使用的,但是今天突然不行了,后來(lái)發(fā)現(xiàn)spring boot 3.0版最近正式發(fā)布了,3.0版是基于java 17 的,不指定的話,默認(rèn)引用最新的導(dǎo)致這種問(wèn)題的發(fā)生,所以大家做的時(shí)候,所有模塊的打包插件的版本一定要指定一下,避免出現(xiàn)這種問(wèn)題,當(dāng)然這個(gè)版本號(hào)最好在總的pom文件中定義一下,子模塊中直接引用就可以了,不用在每個(gè)子模塊中一一定義了
————————————————
版權(quán)聲明:本文為CSDN博主「linab112」的原創(chuàng)文章,遵循CC 4.0 BY-SA版權(quán)協(xié)議,轉(zhuǎn)載請(qǐng)附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/m0_72167535/article/details/128035836文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-839892.html
到了這里,關(guān)于Maven項(xiàng)目打包錯(cuò)誤 org/springframework/boot/maven/RepackageMojo has been compiled by a more recent version的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!