创建.jar 文件

我在学 Java,我有个问题。我创建了6个不同的类,每个类都有自己的 main()方法。我想为每个类创建可执行的 .jar,即6个可执行的 .jar文件。

目前为止我尽力了

java -jar cf myJar.jar myClass.class

我得到 “无法访问 jarfile cf”。我做错了什么,但我不知道是什么。如果这意味着什么的话,我还要使用 Eclipse IDE。

257078 次浏览

为了创建一个. jar 文件,您需要使用 jar而不是 java:

jar cf myJar.jar myClass.class

此外,如果您想使它可执行,您需要为您的应用程序指定一个 入口(即,一个具有 public static void main(String[] args)的类)。这通常是通过创建一个包含 Main-Class头文件(例如,Main-Class: myClass)的 清单文件来实现的。

然而,正如 Mark Peters 指出的,对于 JDK 6,您可以使用 e选项来定义入口点:

jar cfe myJar.jar myClass myClass.class

最后,您可以执行它:

java -jar myJar.jar

参见

因为您已经提到正在使用 Eclipse... Eclipse 可以为您创建 JAR,只要您运行过每个具有 main 的类一次。右键单击项目并单击 Export,然后在 Java 文件夹下选择“ Runnable JAR file”。在启动配置中选择类名称,选择保存 jar 的位置,并在必要时决定如何处理库。点击完成,在裤子上擦手。

方法一:

让我们有一个包含主类 testa 的 java 文件 test.java 现在我们首先简单地编译 java 文件为 javac test.java 我们在同一个目录中创建文件 Manif.txt,然后编写 Main-Class: mainclassname. e.g:

  Main-Class: testa

然后我们通过以下命令创建 jar 文件:

  jar cvfm anyname.jar manifest.txt testa.class

然后通过以下命令运行 jar 文件: java-jar anyname.jar

方法二:

让我们有一个名为 one 的包,每个类都在其中。 然后我们通过以下命令创建 jar 文件:

  jar cf anyname.jar one

然后在 anyname.jar 文件中的目录 META-INF 中打开 Manif.txt 并写入

  Main-Class: one.mainclassname

在第三行,然后我们通过以下命令运行 jar 文件:

  java -jar anyname.jar

使 jar 文件具有多个类文件: jar cf anyname.jar one. class two. class three. class... ..。

把所有的6个类放到6个不同的项目中。然后创建所有6个项目的 jar 文件。通过这种方式,您将获得6个可执行的 jar 文件。

通常,您需要在清单中放入比使用 -e开关所得到的更多内容,在这种情况下,语法是:

jar -cvfm myJar.jar myManifest.txt myApp.class

内容如下: “ create verose jarFilename ManifentFilename”,接下来是您想要包含的文件。

请注意,您提供的清单文件的名称可以是任何名称,因为 jar将自动重命名它,并将其放在 jar 文件中的正确位置。