报错信息如下:
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文件中,更新项目,打包成功
问题一分析:
问题是编译版本和运行版本不一致,具体原因是编译版本高于运行版本,查阅资料发现
如果没指定spring-boot-maven-plugin 的版本,就会拿取最新的版本打包,但是目前高版本的为未必适合1.8的jdk,如果它确实是您想要用的spring boot 项目的版本,为了解决这个问题,就必须明确指定spring-boot-maven-plugin的版本。
问题二分析:
问题是由于插件中缺少程序编译运行的某些类,也是因为spring-boot-maven-plugin 版本不兼容导致的,也需要指定具体版本
文章描述了在使用SpringBootMaven插件打包时遇到的两个问题:编译版本高于运行版本导致的不兼容问题和ClassNotFoundException。解决方案是检查并指定spring-boot-maven-plugin的版本,确保与JDK版本兼容,并通过更改插件版本解决缺失类的问题。
9665

被折叠的 条评论
为什么被折叠?



