当前位置: 首页 > 知识库问答 >
问题:

从命令行创建JAR文件不起作用

崔博延
2023-03-14

我已经编辑了这个问题,现在正是我所做的:

我想从命令行中的一些. class文件创建一个. jar文件。

我在Eclipse上工作,创造了:

myProject项目,在它:myPackage包中,在它的:myClass类中。然后我在命令行中写道:

jar -cfv myJar.jar  myPackage\myClass.class

我得到了这个:

added manifest
adding: myPackage/myClass.class(in = 745) (out= 473)(deflated 36%)

这真的创造了myJar。jar文件。现在,我想检查这个过程是否成功完成,所以我从jar中提取了这个类:

jar xfv myJar.jar

我得到了这个:

  created: META-INF/
 inflated: META-INF/MANIFEST.MF
 inflated: myPackage/myClass.class

这只为我创建了META-INF文件夹和MANIFEST。MF在里面,但我没有看到任何.class文件!!

似乎包装到罐子过程中的某些东西不正确。

有人有主意吗??

任何回答,不胜感激!

共有1个答案

东门奕
2023-03-14

根据你给的输出你执行的目录里没有myClass.class文件

jar -cf myJar.jar myClass.class

很明显,命令不能将其添加到jar中:它不存在。如果要将myClass目录递归地添加到jar文件中,请使用

jar -cf myJar.jar myClass

编辑:

只需查看输出:

 inflated: myPackage/myClass.class

myClass。类文件在jar文件中。完全没有问题。

 类似资料:
  • 问题内容: 我有以下目录层次结构: 在这里,SigarTest是程序包名称。根文件夹位于jdk的bin文件夹中。从那里,我运行以下命令来创建我的项目的jar文件- 其中tools.jar,mongo-2.7.3.jar和sigar.jar是必需的,并且与根目录(jdk的bin文件夹)位于同一文件夹中。但是,运行它,我得到 我究竟做错了什么 ? 问题答案: 使用 目录 选项 哪些 临时改变目录( D

  • 我得到了这个文件,但它不同于eclipse的一个输出。这个大约是100KB,eclipse输出超过2000KB。 我可以使用什么正确的命令来获得与Eclipse相同的文件?

  • 我使用NetBeans8.2创建了一个非常简单的Hello World程序。但是,当我尝试在Linux中使用命令行执行jar文件时 如果你需要更多的信息,请告诉我。 谢了。

  • 问题内容: 我编写了一个名为Main.java的.java文件,并已在Windows命令提示符下使用javac对其进行了编译。编译器正在创建多个.class文件(称为Main.class,Main $ 1.class和Main $ 2.class,大概是因为我的Main.java文件中有匿名内部类)。我试图创建一个可运行的.jar文件,以便双击运行该应用程序(它是Java Swing应用程序)的快

  • 我编写了一个名为Main.java的. java文件,并使用Windows命令提示符中的javac对其进行了编译。编译器正在创建多个. class文件(称为Main.class,Main$1.class, 然后,命令提示符输出以下文本: 尽管如此,当我双击文件时。jar文件在Windows资源管理器中,简单地说,什么都不会发生。没有打开swing应用程序。 希望有人能帮我解决这个问题。非常感谢。

  • 问题内容: 我是Scala的新手,也不了解Java。我想从一个简单的Scala文件中创建一个jar文件。所以我有了我的HelloWorld.scala,生成了一个HelloWorld.jar。 Manifest.mf: 在控制台中,我运行: 问题答案: 示例目录结构: HelloWorld.scala: MANIFEST.MF: build.bat: 为了成功使用 -jar 开关,您需要在 MET