jar运行报错no main manifest attribute

在服务器上运行:

java -jar test-0.0.1-SNAPSHOT.jar

报错:

no main manifest attribute, in test-0.0.1-SNAPSHOT.jar

原因:

原因是找不到主类。

一般情况下,java 打包成 jar 包需要在 MANIFEST.MF 中指定 Main-Class项,以便运行 java -jar xxx.jar 时找到对应的主类。

将test-0.0.1-SNAPSHOT.jar解压后
在这里插入图片描述
查看META-INF下的MANIFEST.MF

在这里插入图片描述
在这里插入图片描述
而正常的应该是这样的:
在这里插入图片描述

解决:

排查之后发现是maven项目中的pom.xml
中没有加

<packaging>jar</packaging>

另外spring-boot-maven-plugin也别忘了

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

加了这两个后再打包运行就好了。

猜你喜欢

转载自blog.csdn.net/qq_33697094/article/details/110549536