(JAVA)使用命令提示符从多个.class文件创建.jar文件



我已经编写了一个名为Main.java的.java文件,并在Windows命令提示符中使用javac对其进行了编译。编译器正在创建多个.class文件(称为Main.class、Main$1.class和Main$2.class——可能是因为我的Main.java文件中有匿名内部类)。我正试图创建一个可运行的.jar文件,这样我就可以双击一个快捷方式来运行这个应用程序(它是一个Java Swing应用程序),但当我导航到三个类文件的目录并键入:时,我没有成功

jar cfv file.jar Main.class Main$1.class Main$2.class

命令提示符然后输出以下文本:

added manifest
adding: Main.class(in 4871) (out = 2848)(deflated 41%)
adding: Main$1.class(in 1409) (out = 833)(deflated 40%)
adding: Main$2.class(in 1239) (out = 767)(deflated 38%)

尽管如此,当我在Windows资源管理器中双击file.jar文件时,简单地说,什么都没发生。没有打开回转应用程序。

希望有人能帮我解决这个问题。谢谢

最佳。。。SL

您需要使用入口点开关-e(带有包含main()方法的类的名称),如下所示:

jar cfve file.jar Main Main.class Main$1.class Main$2.class

必须告诉java应该自动启动哪个类。这是清单-请参阅此处的描述您必须将Manifest.mf打包到您的罐子中。

  1. 打开命令提示符
  2. cd转到jar文件所在的路径
  3. 运行命令jar xf fileName.jar
  4. 它将生成com、META-INF&Copyright.mk文件
  5. 转到要修改类文件的特定包(基本上类文件存在于com目录中)
  6. 从谷歌下载JAD.exe(其Zip文件)
  7. 提取将获得jad.exe的Zip文件
  8. 将类文件(您要修改的)放在包含jad.exe的文件夹中
  9. 转到命令提示符,运行jad fileName.class(要修改的类文件名)
  10. fileName.jad文件将生成,重命名为fileName.java
  11. 编译fileName.java(如果它引用了其他类文件,则在eclipse中相应地配置它)
  12. 编译后,替换步骤4中定义的目录中的类文件
  13. 转到命令提示符,cd Step 4路径,运行jar cf fileName.jar(*表示所有类文件,与目录无关)
  1. 打开cmd(windows+r类型cmd)
  2. 类似地将命令键入为不带quatoes的"jar"
  3. 它将提供一些选项和用法
  4. 使用你想要的
  5. 要创建一个带有class的jar文件,需要提到jar cfv filename.jar example.classexample2.class等
  6. 如果您使用swing,请使用javac-deprecation SwingApplication.java编译它,但JDK版本必须高于JDK1.1版本
  7. 运行java SwingApplication
  8. 所有BEst

相关内容

最新更新