報錯信息如下:
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
或者
ClassNotFoundException: org.apache.commons.compress.archivers.jar.JarArchiveEntry
解決辦法:
排查打包是否使用的 spring-boot-maven-plugin插件
?更換合適的插件版本
記錄我本次排查的思路,之前打包是正常的,最近開始打包異常,打開maven倉庫查看歷史的引入的spring-boot-maven-plugin插件版本,找一個歷史日期的版本寫入pom文件中,更新項目,打包成功
問題一分析:
問題是編譯版本和運行版本不一致,具體原因是編譯版本高于運行版本,查閱資料發(fā)現(xiàn)
如果沒指定spring-boot-maven-plugin?的版本,就會拿取最新的版本打包,但是目前高版本的為未必適合1.8的jdk,如果它確實是您想要用的spring boot 項目的版本,為了解決這個問題,就必須明確指定spring-boot-maven-plugin的版本。
問題二分析:
問題是由于插件中缺少程序編譯運行的某些類,也是因為spring-boot-maven-plugin 版本不兼容導(dǎo)致的,也需要指定具體版本文章來源:http://www.zghlxwxcb.cn/news/detail-613513.html
?文章來源地址http://www.zghlxwxcb.cn/news/detail-613513.html
到了這里,關(guān)于IDEA 打包報錯 maven打包報錯 spring-boot-maven-plugin 與spring-boot 版本的兼容性的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!