Spring boot: 运行maven打包的jar包报错-jar中没有主清单属性

Posted Jane&Coding

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring boot: 运行maven打包的jar包报错-jar中没有主清单属性相关的知识,希望对你有一定的参考价值。

使用mvn package打jar包,运行java -jar XXX.jar的时候报错:jar中没有主清单属性。

解决办法:

pom.xml中添加

<build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>
        </plugins>
    </build>

再次运行mvn package之后,即可正常运行。

PS:

jar包多了BOOT-INF文件夹,里面包含class和依赖项。而且META-INFMANIFEST.MF文件由

Manifest-Version: 1.0
Implementation-Title: restsample
Implementation-Version: 1.0-SNAPSHOT
Built-By: ZJ
Implementation-Vendor-Id: com.myproject
Created-By: Apache Maven 3.3.9
Build-Jdk: 1.8.0_161
Implementation-URL: https://projects.spring.io/spring-boot/#/spring-bo
 ot-starter-parent/restsample

变为

Manifest-Version: 1.0
Implementation-Title: restsample
Implementation-Version: 1.0-SNAPSHOT
Built-By: ZJ
Implementation-Vendor-Id: com.myproject
Spring-Boot-Version: 2.0.5.RELEASE
Main-Class: org.springframework.boot.loader.JarLauncher
Start-Class: com.myproject.restsample.RestSampleClass
Spring-Boot-Classes: BOOT-INF/classes/
Spring-Boot-Lib: BOOT-INF/lib/
Created-By: Apache Maven 3.3.9
Build-Jdk: 1.8.0_161
Implementation-URL: https://projects.spring.io/spring-boot/#/spring-bo
 ot-starter-parent/restsample

 

参考:

https://blog.csdn.net/u010429286/article/details/79085212

 

以上是关于Spring boot: 运行maven打包的jar包报错-jar中没有主清单属性的主要内容,如果未能解决你的问题,请参考以下文章

如何运行 spring boot 重新打包目标

Spring boot: 运行maven打包的jar包报错-jar中没有主清单属性

IDEA+Spring Boot+MAVEN部署及其他

Spring Boot(Maven)+Docker打包

spring-boot-maven-plugin插件作用

Spring Boot(Maven)+Docker打包