我创建了一个JAR文件,如下所示:
jar cf Predit.jar *.*
我通过双击这个JAR文件来运行它(它没有工作)。所以我像这样在DOS提示符下运行它:
java -jar Predit.jar
它引发了“加载主类失败”异常。所以我提取了这个JAR文件:
jar -xf Predit.jar
然后运行类文件:
java Predit
它运行得很好。我不知道JAR文件为什么不能工作。请告诉我运行JAR文件的步骤
我创建了一个JAR文件,如下所示:
jar cf Predit.jar *.*
我通过双击这个JAR文件来运行它(它没有工作)。所以我像这样在DOS提示符下运行它:
java -jar Predit.jar
它引发了“加载主类失败”异常。所以我提取了这个JAR文件:
jar -xf Predit.jar
然后运行类文件:
java Predit
它运行得很好。我不知道JAR文件为什么不能工作。请告诉我运行JAR文件的步骤
当前回答
如果您不想处理这些细节,您还可以使用Eclipse或NetBeans中的导出jar助手。
其他回答
运行jar之前,检查Main-Class: classname在MANIFEST中是否可用。MF文件。清单。MF存在于罐子中。
java -jar filename.jar
您需要在jar文件清单中指定一个Main-Class。
Oracle的教程包含一个完整的演示,但这里有另一个从头开始的演示。你需要两个文件:
Test.java:
public class Test
{
public static void main(String[] args)
{
System.out.println("Hello world");
}
}
manifest . mf:
Manifest-version: 1.0
Main-Class: Test
注意,文本文件必须以新行或回车符结束。 如果最后一行不以。结尾,则不能正确解析 换行或回车。
然后运行:
javac Test.java
jar cfm test.jar manifest.mf Test.class
java -jar test.jar
输出:
Hello world
要运行jar,首先你必须创建
可执行jar
然后
Java -jar xyz.jar
命令会起作用
您必须向jar添加一个清单,它告诉java运行时主类是什么。 创建一个文件Manifest。Mf’,内容如下:
Manifest-Version: 1.0
Main-Class: your.programs.MainClass
改变“your.programs。MainClass'到你实际的主类。现在将文件放到jar文件中,在名为“META-INF”的子文件夹中。为此,您可以使用任何zip实用程序。
如果您不想仅仅为了运行jar文件而创建清单,那么您可以在运行jar文件时直接从命令行引用main类。
java -jar Predit.jar -classpath your.package.name.Test
这将设置在jar文件中运行哪个主类。