2024-10-02 06:00:00

如何运行JAR文件

我创建了一个JAR文件,如下所示:

jar cf Predit.jar *.*

我通过双击这个JAR文件来运行它(它没有工作)。所以我像这样在DOS提示符下运行它:

java -jar Predit.jar

它引发了“加载主类失败”异常。所以我提取了这个JAR文件:

jar -xf Predit.jar

然后运行类文件:

java Predit

它运行得很好。我不知道JAR文件为什么不能工作。请告诉我运行JAR文件的步骤


当前回答

我有这样的文件夹结构:

D:\JavaProjects\OlivePressApp\com\lynda\olivepress\Main.class D:\JavaProjects\OlivePressApp\com\lynda\olivepress\press\OlivePress.class D:\JavaProjects\OlivePressApp\com\lynda\olivepress\olives\Kalamata.class D:\JavaProjects\OlivePressApp\com\lynda\olivepress\olives\Ligurian.class D:\JavaProjects\OlivePressApp\com\lynda\olivepress\olives\Olive.class

Main.class在包com.lynda.olivepress中

还有另外两个包:

com.lynda.olivepress.press com.lynda.olivepress.olive

1)创建一个名为“Manifest.txt”的文件,有两行,第一行是Main-Class,第二行是空行。

Main-Class: com.lynda.olivepress.Main

D:\JavaProjects\OlivePressApp\Manifest.txt

2)使用清单和主类入口点创建JAR

D:\JavaProjects\OlivePressApp>jar cfm OlivePressApp.jar Manifest.txt / lynda/olivepress/main.class /lynda/olivepress/*

3)运行JAR

OlivePressApp.jar

注:com/lynda/olivepress/*表示在第一点之前包含上面提到的其他两个包。

其他回答

Java

class Hello{
   public static void main(String [] args){
    System.out.println("Hello Shahid");
   }
}

manifest . mf

Manifest-version: 1.0
Main-Class: Hello

在命令行上:

$ jar cfm HelloMss.jar  manifest.mf Hello.class 
$ java -jar HelloMss.jar

输出:

Hello Shahid

要运行jar,首先你必须创建

可执行jar

然后

Java -jar xyz.jar

命令会起作用

java -classpath Predit.jar your.package.name.MainClass

我有这样的文件夹结构:

D:\JavaProjects\OlivePressApp\com\lynda\olivepress\Main.class D:\JavaProjects\OlivePressApp\com\lynda\olivepress\press\OlivePress.class D:\JavaProjects\OlivePressApp\com\lynda\olivepress\olives\Kalamata.class D:\JavaProjects\OlivePressApp\com\lynda\olivepress\olives\Ligurian.class D:\JavaProjects\OlivePressApp\com\lynda\olivepress\olives\Olive.class

Main.class在包com.lynda.olivepress中

还有另外两个包:

com.lynda.olivepress.press com.lynda.olivepress.olive

1)创建一个名为“Manifest.txt”的文件,有两行,第一行是Main-Class,第二行是空行。

Main-Class: com.lynda.olivepress.Main

D:\JavaProjects\OlivePressApp\Manifest.txt

2)使用清单和主类入口点创建JAR

D:\JavaProjects\OlivePressApp>jar cfm OlivePressApp.jar Manifest.txt / lynda/olivepress/main.class /lynda/olivepress/*

3)运行JAR

OlivePressApp.jar

注:com/lynda/olivepress/*表示在第一点之前包含上面提到的其他两个包。

如果您不想仅仅为了运行jar文件而创建清单,那么您可以在运行jar文件时直接从命令行引用main类。

java -jar Predit.jar -classpath your.package.name.Test

这将设置在jar文件中运行哪个主类。