打包运行报no main manifest attribute, in XXXX的解决办法

这个问题主要是因为MANIFEST.MF文件内没有指定启动Main-Class主类

三个办法:

1.指定MANIFEST.MF文件内容中的启动Main-Class主类

2.pom文件添加如下代码再重新打包

<build>
<plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <executions> <execution> <goals> <goal>repackage</goal> <goal>build-info</goal> </goals> </execution> </executions> </plugin> </plugins> </build>

 

3.一般情况下,java 打包成 jar 包需要在  MANIFEST.MF 中指定 Main-Class 项,以便运行 java -jar xxx.jar 时找到对应的主类。因为-jar的含义就是后面跟的jar包是有main class可独立运行,所以需要在打包成jar包时指定这个类;否则,需要在执行的时候手动指定。
解决方案:
在运行jar包时,使用 -cp / --classpath 来手动指定。
java -cp xxx.jar com.juanxinc.xxx.类名

 

即可

posted @ 2020-07-27 14:43  卷心菜的奇妙历险  阅读(36715)  评论(0编辑  收藏  举报