,,Spring Boot jar中没有主清单属性的解决方法

,,Spring Boot jar中没有主清单属性的解决方法 本文主要介绍Spring Boot jar没有主列表属性的解决方案通过示例代码进行了非常详细的介绍,对于大家的学习或者工作都有一定的参考价值有需要的朋友就跟着下面的边肖学习吧 使用Spring Boot微服务搭建框架可以在eclipse和Idea下正常运行,但是部署在jar包中或者直接使用java -jar命令时,会有提示xxxxx

x.jar中没有主清单属性:

d:\ Hu-git \ spring-XXX-XXX \ target Java-jar spring-cloud-eureka-0 . 0 . 1-SNAPS

热罐子

spring-XXX-XXX-0 . 0 . 1-snapshot . jar中没有主库存属性。

键入jar package:mvn install through maven,或者在IDE中右键单击并选择Run as-maven install。

这里有一个问题:主要的列表属性是什么?

以SpringBoot为例,jar包包含三个文件夹:BOOT-INF、META-INF和org。您可以将jar包解压缩到文件夹中进行查看。有一份清单。META-INF文件夹下的MF文件,它指示程序和版本信息的条目,如下所示

清单-版本:1.0

实现-标题:spring-xxx-xxx

实施版本:0.0.1快照

归档器-版本:丛归档器

建造者:XXXX

实现-供应商-Id: com.huyikang.practice

spring-Boot-版本:1.5.9 .发布

实施-供应商:Pivotal软件公司。

main-Class:org . spring framework . boot . loader . jar launcher

start-Class:com . Hu yikang . practice . eureka . application

spring-Boot-Classes:Boot-INF/Classes/

Spring-Boot-Lib: BOOT-INF/lib/

创建者:Apache Maven 3.5.2

Build-Jdk: 1.8.0_151

实施-网址:http://maven.apache.org

Main-Class表示在Spring Boot启动jar包的程序。

Start-Class属性表示Spring Boot程序的入口类,它应该有一个main方法。

Spring-Boot-Classes表示类的路径,所有编译后的类文件和配置文件都存储在这个路径中。

Spring-Boot-Lib表示依赖jar包的存储位置。

默认情况下,这些值由SpringBoot包插件生成。没有这些属性,SpringBoot程序无法自然运行,会报错:jar中没有主库存属性,也就是说没有按照SpringBoot的要求生成这些必要的属性。

解决办法:

将SpringBoot构建的插件添加到pom,然后重新运行mvn install。

建设

插件

插件

groupIdorg.springframework.boot/groupId

artifactId spring-boot-maven-plugin/artifactId

/插件

/插件

/构建

运行mvn install时,会自动生成这些主要的清单属性。运行java -jar xxx.jar时,会根据主要的manifest属性找到启动类,从而启动程序。

关于Spring Boot jar中没有主库存属性的解决方案的这篇文章到此为止。有关Spring Boot罐子的主要库存属性的更多信息,请搜索我们以前的文章或继续浏览下面的相关文章。希望大家以后能多多支持我们!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: