3
Failed to load Main-Class manifest attribute from TestExample.jar 

当我尝试运行可执行jar文件时,如何解决上述问题?

4

3 回答 3

0

您需要在 Manifest 中指定主类。这是您指定 jar 的入口点的方式。您在此处指定的类需要有一个 main 方法,该方法在运行 jar 时首先执行。

看看这个以获得很好的解释:http ://docs.oracle.com/javase/tutorial/deployment/jar/appman.html

于 2012-02-10T06:09:04.860 回答
0

您是否将META-INF文件包含在指定 jar 的 jar 中Main-Class

命令:jar cvfm MyJarName.jar manifest.txt *.class

cvfm 的意思是“创建一个 jar;显示详细输出;指定输出 jar 文件名;指定清单文件名。”

于 2012-02-10T05:59:40.903 回答
0

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,要么使用命令行的第一个变体启动它。顺便说一句:当您双击带有*.jar文件扩展名的文件时,通常会使用第二种变体。

于 2014-10-09T01:14:02.417 回答