打包运行报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.类名
eg: java -cp uninstaller.jar uninstall
即可
解决Java打包运行缺少Main-Class属性的问题
文章讲述了当Java应用程序打包后运行报错nomainmanifestattribute,inXXXX时的三种解决方法:1)在MANIFEST.MF文件中指定Main-Class主类;2)在pom.xml文件中添加spring-boot-maven-plugin插件进行打包配置;3)使用命令行参数-cp或-classpath手动指定主类路径。示例给出了使用java命令手动指定类的运行方式。
3536

被折叠的 条评论
为什么被折叠?



