无法运行jar文件

时间:2010-10-09 15:34:09

标签: java

我用命令创建jar文件。

$jar -cvf A.jar A.class

我尝试执行

$java -jar A.jar 

我收到以下错误。(在manifest.mf中添加“Main-class:A”之前)

Failed to load Main-Class manifest attribute from A.jar

MANIFEST.MF的内容

Manifest-Version: 1.0

Created-By: 1.6.0_18 (Sun Microsystems Inc.)
Main-Class: A

现在我正在

Exception in thread "main" java.lang.NoSuchMethodError: main

2 个答案:

答案 0 :(得分:1)

您还需要jar中的manifest文件。

答案 1 :(得分:1)

通常您在创建jar时不需要指定Manifest文件,但是当您想通过启动java -jar来启动jar时,您必须指定自己的清单,其中详细说明了包含{的类的位置{1}}方法。

为此,您必须创建一个包含以下行的文件:

main()

(我认为A是包含主要方法的类,如果不是这种情况则指定所需类的FQN)

使用以下命令创建jar:

Main-Class: A

例如:

jar cfm A.jar yourFileContainingMain-Class A.class

编辑后:

必须在您要启动的//Mac-Makkhdyn:~ Makkhdyn$ cat A.java public class A{ public static void main(String... args){ System.out.println("lol"); } } //Mac-Makkhdyn:~ Makkhdyn$ cat manifest Main-Class: A //Mac-Makkhdyn:~ Makkhdyn$ javac A.java //Mac-Makkhdyn:~ Makkhdyn$ jar cvfm A.jar manifest A.class added manifest adding: A.class(in = 399) (out= 278)(deflated 30%) //Mac-Makkhdyn:~ Makkhdyn$ java -jar A.jar lol 课程中使用main()方法。请查看以下链接。


资源: