再议JAR文件

1.将应用程序压缩为jar文件

可以使用jar.exe把一些文件压缩成一个JAR文件,来发布我们的应用程序。我们可以把java应用程序中涉及到的类压缩成一个JAR文件,比如Tom.jar,然后使用java解释器(使用参数-jar)执行这个压缩文件,或用鼠标双击该文件,执行这个压缩文件。

java -jar Tom.jar

假设应用程序中有两个类A、B,其中A是主类,生成一个JAR文件的步骤如下:

(1)首先,用文本编辑器(比如Windows下的记事本)编写一个清单文件Mymoon.mf:

Manifest-version: 10

Main-Class: A

Created-By: 1.2.2(sun Microsystems Inc.):

比如,保存Mymoon.mf到D:\test。需要注意的是在编写清单文件时,在“Manifest-version:”和“1.0”之间、“Main-Class:”和主类“A”之间,以及“Created-By:”和“1.2.2”之间必须有且只有一个空格。

(2)生成JAR文件

D:\test\jar cfm Tom.jar Mymoon.mf A.class B.class

其中参数c边式要生成一个新的JAR文件;f表示要生成的JAR文件的名字;m表示文件清单文件的名字

注:如果机器安装过WinRAR解压软件,并将.jar文件与该解压缩软件做了关联,那么Tom.jar文件的类型是WinRAR,使得Java程序无法运行。因此,我们在发布软件时,还应该再写一个有如下内容的bat文件Tom.bat:

javaw -jar Tom.jar

2.将类压缩成jar文件

我们可以使用jar.exe把一些类的字节码文件压缩成一个JAR文件,然后将这个JAR文件存放到JAVA运行环境的扩展框架中,即将 该JAR文件存放在JDK安装目录的jre\lib\ext文件夹中。这样,其他的程序就可以使用这个JAR文件中的类来创建对象了。

现在,我们就将D:\test中的Test1.class和Test2.class压缩成一个JAR文件Jerry.jar:

Test1.java

public class Test1
{ public void fTest1()
{ System.out.println("I am a method In Test1 class");
}
}
Test2.java
public class Test2
{ public void fTest2()
{ System.out.println("I am a method In Test2 class");
}
}

(1)首先编写一个清单文件(Manifestfiles)

moon.mf
Manifest-version: 1.0
Class: Test1 Test2
Created-By: 1.2.2(Sun Microsystems Inc.)

保存moon.mf到D:\test

(2)生成JAR文件

D:\test\jar cfm Jerry.jar moon.mf Test1.class Test2.class

时间: 2024-11-02 17:32:49

再议JAR文件的相关文章

.jar文件已经反编译成.java的文件,如何再编译回.jar?

问题描述 我将一个.jar的文件反编译成了java文件,生成了N多的文件夹与.java的文件,修改了里面的代码后,如何将这些文件再编译成.jar文件呢? 解决方案 解决方案二:myeclipse里面不是可以打包成多种格式的包嘛解决方案三:找到主类运行完后将生成的class文件在dos下打成jar或者直接用eclipse打成jar包解决方案四:基本上是不可能的解决方案五:使用命令jar-u....u就是用来更新jar包中的内容的.

"package中的javac,java用法" && "制作可执行jar文件"

执行 java初学者最早会用的命令无非是就是javac和java,但即使这么简单命令也还会把我们弄得头皮发麻 -__- .Roger下面就"package中的javac,java用法"和"制作可执行jar文件"做点简单的解释. 最基础的东西就不废话了,至于package先讲讲我的理解,因为我觉得知道这点对于开发还是很有帮助的.举个例子说:有两个类Tom和Jerry同属于一个package--Partners //Tom.javapackage Partners;pu

win7下双击运行jar文件的方法

选择默认程序:.jar文件右击,打开方式->选择默认程序->浏览,选中jre下bin文件中javaw.exe . 编辑注册表:HKEY_CLASSES_ROOTApplicationsjavaw.exeshellopencommand,修改数据数值为 ["D: Program FilesJavajdk1.6.0_21jrebinjavaw.exe" -jar "%1" ](方括号内,只要在原来的数值的"%1" 前添加 –jar 即可)

从Java的jar文件中读取数据的方法

  这篇文章主要介绍了从Java的jar文件中读取数据的方法,实例分析了java档案文件的相关操作技巧,需要的朋友可以参考下 本文实例讲述了从Java的jar文件中读取数据的方法.分享给大家供大家参考.具体如下: Java 档案 (Java Archive, JAR) 文件是基于 Java 技术的打包方案.它们允许开发人员把所有相关的内容 (.class.图片.声音和支持文件等) 打包到一个单一的文件中.JAR 文件格式支持压缩.身份验证和版本,以及许多其它特性. 从 JAR 文件中得到它所包含

Win7系统不能用鼠标双击打开jar文件怎么办?

Win7系统不能用鼠标双击打开jar文件怎么办? 1.按"Win+R"打开"运行"窗口,输入"regedit"命令后按回车打开注册表; 2.找到以下注册项HKEY_CLASSES_ROOT/Applications/javaw.exe,一开始没有的话,就在资源管理器中找到javaw.exe文件,如我的电脑中为D:/Program Files/Java/jre/bin/javaw.exe,运行下,或找个Jar文件,选择打开方式,输入D:/Progr

Win7系统双击打不开jar文件

  1.按"Win+R"打开"运行"窗口,输入"regedit"命令后按回车打开注册表; 2.找到以下注册项HKEY_CLASSES_ROOT/Applications/javaw.exe,一开始没有的话,就在资源管理器中找到javaw.exe文件,如我的电脑中为D:/Program Files/Java/jre/bin/javaw.exe,运行下,或找个Jar文件,选择打开方式,输入D:/Program Files/Java/jre/bin/j

eclipse打包好的java jar文件,运行时报错找不到依赖包。

问题描述 eclipse打包好的java jar文件,运行时报错找不到依赖包. eclipse调试没问题,打包成jar,cmd运行后报错找不到依赖包,我用了几个依赖包,放在桌面,eclipse都关联好了,运行正常,export出来的jar得classpath文件也描述了依赖包地址如下,不知道为什么就找不到依赖包.还有就是依赖包如何和项目捆绑一起啊,这个肯定要跟着程序一起走的.感谢大牛. 解决方案 把jar拷到项目文件夹下 解决方案二: 放进去之后clear一下然后再打包出来,实在不行你打包之后再

WIN7中修改Jar文件打开方式的方法

电脑中安装过像WinRar,Nokia PC套件之类,能修Jar文件的打开方式的程序后,一些在电脑上能直接运行的Jar文件就不能直接运行了,修改打开方式,但找不到直接打开的程序,自己人工找到安装目录中javaw.exe,但打开后提示,没有主类的问题,取消WinRar文件关联,但Nokia PC套件不能取消关联,还是不行.在网上找到一个方法,是建个bat文件,内容为:"javaw.exe的完整路径" -jar "%1".再修改打开方式的为该文件,成功,但有不足,总是弹

linux下用shell脚本启动可执行.jar文件并关闭的方法

话不多说,开始上代码,为了偷懒,代码只是截图了,感兴趣的朋友可以看了之后自己写,这样加深印象. 上面是小弟写的shell脚本.写的不好请见谅. 首先遇到的第一个坑 我在window下写的 然后道linux中执行,在linux死活都说俺的19行有错误,俺就不明白了,哪里有错,问了下别人,也说没错.突然有个高人问我在哪编写的,小弟回答在win下,他告诉俺执行下这个命令: dos2unix server.sh 然后小弟就执行了,说命令不存在,小弟只好安装这个,执行了以下命令 yum install d