当前位置:主页 > java教程 > jar包运行时提示jar中没有主清单属性

jar包运行时提示jar中没有主清单属性的解决

发布:2023-03-23 16:25:01 59


给大家整理了相关的编程文章,网友蔚君浩根据主题投稿了本篇教程内容,涉及到jar包运行、没有主清单属性、jar没有主清单属性、jar包运行时提示jar中没有主清单属性相关内容,已被689网友关注,内容中涉及的知识点可以在下方直接下载获取。

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中没有主清单属性”原因及分析

最近写了一个博客采集系统,用的是普通maven项目中的main方法作为启动项,打完jar包在centos7上运行时报错,查找资料改正,做一些必要的笔记,一来是对自己学习的知识的巩固,二来对有同样问题的人有参考作用

报错原因

打包后的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

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持码农之家。


参考资料

相关文章

网友讨论