Failed to load Main-Class manifest attribute from TestExample.jar
如何解决当我试图运行可执行的JAR文件的上述问题?
是否包含在指定META-INF
的罐子Main-Class
文件?
命令:jar cvfm MyJarName.jar manifest.txt *.class
CVFM表示“创建一个罐子,显示详细输出;指定输出JAR文件名;指定清单文件名。”
您需要在清单指定主类。这是如何指定的入口点的罐子。您在此处指定的类需要有运行罐子时首先执行一个主要方法。
看看这一个很好的解释:http://docs.oracle.com/javase/tutorial/deployment/jar/appman.html
Java有两种方法来启动一个JAR文件。第一个指定的JAR文件和主类(与静态main(String[])
方法的类):
java -cp .../example.jar com.example.Main
第二种方法使用的参数-jar
(而不是-classpath
参数)。它不允许指定主类:相反,预计主类是在Manifest JAR文件内指定。 (含有线META-INF/MANIFEST.MF
Main-Class: com.example.Main
)。
java -jar example.jar
您的错误信息意味着你有没有构造为可执行的JAR文件的JAR文件(主类中没有明显的条目)。您可能需要以不同的方式构建JAR或用命令行的第一个变种启动它。 BTW:当您双击与*.jar
文件扩展名的文件中的第二个变体经常被使用。