运行jar包报 “XXX中没有主清单属性”

2024-03-22 20:10

本文主要是介绍运行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


四 总结

如有错误恳请指正,如有侵权请联系我删除
参考文章:idea 打包的jar运行报 “XXX中没有主清单属性”
                 centos启动、关闭jar包服务

这篇关于运行jar包报 “XXX中没有主清单属性”的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/836102

相关文章

Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式

《Java通过驱动包(jar包)连接MySQL数据库的步骤总结及验证方式》本文详细介绍如何使用Java通过JDBC连接MySQL数据库,包括下载驱动、配置Eclipse环境、检测数据库连接等关键步骤,... 目录一、下载驱动包二、放jar包三、检测数据库连接JavaJava 如何使用 JDBC 连接 mys

python删除xml中的w:ascii属性的步骤

《python删除xml中的w:ascii属性的步骤》使用xml.etree.ElementTree删除WordXML中w:ascii属性,需注册命名空间并定位rFonts元素,通过del操作删除属... 可以使用python的XML.etree.ElementTree模块通过以下步骤删除XML中的w:as

springboot项目打jar制作成镜像并指定配置文件位置方式

《springboot项目打jar制作成镜像并指定配置文件位置方式》:本文主要介绍springboot项目打jar制作成镜像并指定配置文件位置方式,具有很好的参考价值,希望对大家有所帮助,如有错误... 目录一、上传jar到服务器二、编写dockerfile三、新建对应配置文件所存放的数据卷目录四、将配置文

解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题

《解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘问题》:本文主要介绍解决未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4... 目录未解析的依赖项:‘net.sf.json-lib:json-lib:jar:2.4‘打开pom.XM

python如何调用java的jar包

《python如何调用java的jar包》这篇文章主要为大家详细介绍了python如何调用java的jar包,文中的示例代码简洁易懂,具有一定的借鉴价值,有需要的小伙伴可以参考一下... 目录一、安装包二、使用步骤三、代码演示四、自己写一个jar包五、打包步骤六、方法补充一、安装包pip3 install

k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)

《k8s上运行的mysql、mariadb数据库的备份记录(支持x86和arm两种架构)》本文记录在K8s上运行的MySQL/MariaDB备份方案,通过工具容器执行mysqldump,结合定时任务实... 目录前言一、获取需要备份的数据库的信息二、备份步骤1.准备工作(X86)1.准备工作(arm)2.手

Python打印对象所有属性和值的方法小结

《Python打印对象所有属性和值的方法小结》在Python开发过程中,调试代码时经常需要查看对象的当前状态,也就是对象的所有属性和对应的值,然而,Python并没有像PHP的print_r那样直接提... 目录python中打印对象所有属性和值的方法实现步骤1. 使用vars()和pprint()2. 使

CSS3中的字体及相关属性详解

《CSS3中的字体及相关属性详解》:本文主要介绍了CSS3中的字体及相关属性,详细内容请阅读本文,希望能对你有所帮助... 字体网页字体的三个来源:用户机器上安装的字体,放心使用。保存在第三方网站上的字体,例如Typekit和Google,可以link标签链接到你的页面上。保存在你自己Web服务器上的字

SpringBoot读取ZooKeeper(ZK)属性的方法实现

《SpringBoot读取ZooKeeper(ZK)属性的方法实现》本文主要介绍了SpringBoot读取ZooKeeper(ZK)属性的方法实现,强调使用@ConfigurationProperti... 目录1. 在配置文件中定义 ZK 属性application.propertiesapplicati

Java反射实现多属性去重与分组功能

《Java反射实现多属性去重与分组功能》在Java开发中,​​List是一种非常常用的数据结构,通常我们会遇到这样的问题:如何处理​​List​​​中的相同字段?无论是去重还是分组,合理的操作可以提高... 目录一、开发环境与基础组件准备1.环境配置:2. 代码结构说明:二、基础反射工具:BeanUtils