文章目录
  1. 1. 报错信息
  2. 2. 原因分析
  3. 3. 解决方法

通过maven -package命令打包一个java工程为jar包后,使用java -jar xxx.jar报错。
错误内容为No main manifest attribute

这种情况有多种解决方法,今天要讲的就是通过-cp参数指定要加载的Main方法。
具体做法如下

报错信息

在Linux系统下执行Java -jar XXX.jar com.HelloWorld 往往会提示:No main manifest attribute, in XXX.jar

原因分析

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

因为-jar的含义就是后面跟的jar包是有main class可独立运行,所以需要在打包成jar包时指定这个类。

解决方法

如果想运行时指定想要运行的类,此时应该用-cp / –classpath来指定,命令如下:

java -cp XXX.jar com.HelloWorld
文章目录
  1. 1. 报错信息
  2. 2. 原因分析
  3. 3. 解决方法
Fork me on GitHub