idea 打包的jar运行报 "XXX中没有主清单属性"

idea 打包的jar运行报

使用idea2018打包了一个spring boot项目(打包为jar

启动是报错如下:

idea 打包的jar运行报 "XXX中没有主清单属性"

错误原因

打包后的jar文件中的MANIFEST.MF缺少项目启动项,即没有Main-ClassStart-Class
如下:

idea 打包的jar运行报 "XXX中没有主清单属性"

idea 打包的jar运行报 "XXX中没有主清单属性"

解决方案如下

1、指定MANIFEST.MF路径

项目打包前
第一步 file–>project structure 弹框后选中Atifacts—> + ---->jar---->from module with dependenceis
第二步 选择一个Main Class,然后指定META-INF/MANIFEST.MF的路径为src下(注意不要放到main/java目录下,否则打成的jar中META-INF/MANIFEST.MF不含有Main-Class信息)

idea 打包的jar运行报 "XXX中没有主清单属性"

idea 打包的jar运行报 "XXX中没有主清单属性"

idea 打包的jar运行报 "XXX中没有主清单属性"

如果这个方案不行,那就很有可能是另一个原因

2、项目pom.xml文件中没有添加插件spring-boot-maven-plugin

idea 打包的jar运行报 "XXX中没有主清单属性"

成功结果

idea 打包的jar运行报 "XXX中没有主清单属性"

如果看到上面红框内容就证明没问题了