今天我在使用idea对一个maven项目打包的时候,导出的jar包无法运行,提示xxx.jar中无主清单属性。使用idea生成的MANIFEST.MF是这样的:
Manifest-Version: 1.0
Main-Class: com.xqnode.Run
然而build出来的jar包中的MANIFEST.MF却是这样的:
Manifest-Version: 1.0
Archiver-Version: Plexus Archiver
Built-By: looly
Build-Jdk: 1.7.0_79
Created-By: Apache Maven 3.5.4
MANIFEST.MF位于jar包的META-INF目录下:

很明显,缺少了一行主类的配置:
Main-Class: com.xqnode.Run
需要将这一行添加到MANIFEST.MF文件的最后一行。再次执行
java -jar xx.jar
运行正常。

本文解决IDEA中Maven项目打包后,jar包无法运行的问题。原因是生成的MANIFEST.MF文件缺失Main-Class属性。通过手动添加该属性至MANIFEST.MF文件,使jar包能够正常运行。
2411





