背景 |
之前一直使用的是 Springboot 直接创建的项目,在idea中进行 clean 、package 生成jar包,通过命令行 java -jar xxx.jar 即可运行。 后来看同事直接使用idea 的 Maven 工程选项直接构建项目,也尝试了一下,结果在运行 jar 包的时候提示了 【jar中没有主清单属性】 。
处理 |
在博客中搜索 发现了一种解决方式:
在 pom文件中 添加这么一段即可,添加后再运行jar包 即可正常。
奇怪的是 spingboot 创建的为什么不用加这么一句话,再此搜索发现原来,springboot的pom文件中有这么一段
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.3.5.RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
按住 ctrl + 鼠标左键(需要如下设置,不然点击可能没有反应)点击 spring-boot-starter-parent
可以看到spring-boot-starter-parent 的pom文件中其实有这么一段
豁然开朗,原来springboot构建的项目里面也是需要有repackage 插件的,只是在parent里。
参考文章:
https://blog.csdn.net/Mrzhuangr/article/details/124731024
https://blog.csdn.net/MCJ_2017/article/details/126782358