这篇文章主要介绍“jar包运行时提示jar中没有主清单属性如何解决”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“jar包运行时提示jar中没有主清单属性如何解决”文章能帮助大家解决问题。
jar包运行时提示jar中没有主清单属性
解决办法
在pom文件中添加
<build> <!--打包成jar包时的名字--> <finalName>cloud-provider-payment8002</finalName> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <goals> <goal>repackage</goal> </goals> </execution> </executions> </plugin> </plugins> </build>
之后执行mvn install,编译,打包,此时再执行java -jar就可以正常启动程序了
运行jar包报“XXX中没有主清单属性”
报错原因
打包后的jar文件中的MANIFEST.MF
缺少项目启动项,即没有Main-Class
,如下:
解决方案
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信息)
如果这个方案不行,那就很有可能是另一个原因
2、项目pom.xml文件中添加插件spring-boot-maven-plugin
3、修改后重新生成jar包
结果如下:
相关常用命令汇总
在linux下启动或关闭jar包服务
启动:进入到jar包对应的文件夹,执行 nohup java -jar xxx.jar &
命令
关闭:
先查出对应的PID:执行命令
ps -aux
kill命令关闭对应的PID:执行命令
kill
对应的jar包
的PID
实时查看日志命令:进入到对应的日志目录下面,执行 tail -f xx.log
命令,停止退出,执行ctrl+c
关于“jar包运行时提示jar中没有主清单属性如何解决”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注编程网行业资讯频道,小编每天都会为大家更新不同的知识点。