MyException - 我的异常网
当前位置:我的异常网» Web前端 » 运作jar文件

运作jar文件

www.MyException.Cn  网友分享于:2013-11-23  浏览:39次
运行jar文件
一、制作jar文件

在制作.jar 文件之前你必须先编译好你的.java文件。假设我们的文件目录是c:javamyJavahelloHello.java
现在假设Hello.java的文件内容为:

/*
*
* Hello.java
*
*/


public class Hello {

public static void mian(String[] args){

System.out.println("Hello, World !");

}

}

在进行.jar 制作的时候你必须把路径切换到Hello.java 所在的文件目录的外一层文件夹(.jar文件要在Dos才能创建(windows平台)),即myJava
运行如下的命令可以把当前文件夹下的所有内容都包含在.jar 文件内。

c:javamyJava>jar cf Hello.jar .

说明一下:命令行中 jar 是生成.jar文件的程序的调用接口。 cf 是一对可选项(options)后面的Hello.jar 就是我们给文件取的名字了,最后一个点号(.)指示工具将当前目录下的所有文件都放进jar文件,jar工具进行地归操作,当文件夹中含有不止一个文件时。



二、察看jar文件
其实,jar文件是采用WinZip 的格式进行文件压缩的,所以你可采用WinZip 解压缩文件的,还可以利用如下的命令行察看:

c:javamyJava>jar tf Hello.jar
你会看到本地机子里的jvm 的版本以及其生产厂家信息
还有 Main-Class: Hello.Hello 等信息。


三、把文件移到你喜欢的目录
假设你想把jar 文件移到目录:d:Java2myFirst 下面,请运行如下的命令:
d:Java2myFirst> jar xf c:javaHello.jar
说明一下:jar 文件可以封闭,就意味着指定的包中的每一个类必须包含在同一个目录下。

四:内容清单 manifest.fm
manifest.fm 文件是由键值对组成的。其中包含前面所说的jvm 的版本号 / 创建他的厂商等。

五、增加清单的内容
当若我们编辑了如下的一个addContents.txt 文件

Name: myJavaHello
Sealed: true

则可以通过如下命令把其加入到我们的清单文件中:

c:javamyJava>jar umf addContents.txt Hello.jar

六、运行jar文件

你可以通过以下的方式来运行jar文件:
c:javamyJava>java -classpath . -jar Hello.jar

说明:需要命令的 -classpath . 部分是因为类的路径环境变量中没有(.)路径。


也可以
c:javamyJavaHello>java -jar Hello.jar

假如你的电脑是windows XP 版本 你还可以直接到你的c:javamyJavaHello 下双击Hello.jar 文件 但是你看不到运行的结果
(图形界面程序可以这样运行),在windows 2000 上面,jar 文件被视作.zip 文件所以你一双击他就会把你的文件解压,而不是运行文件。所以你只有采用命令行的方式了。


运行命令之后,你会看到在你的屏幕上显示的
Hello, World !
字样。


结束语:

到这里我们jar 文件的创建和运行等相关的介绍算结束了。你可以试着去验证一下。然后创建复杂的程序,比如具有界面的高级程序。


假如你对jar 文件 很感爱好 或者 想对她有更深刻的了解那么你可以在dos 低下敲入 jar 察看更多的帮助信息和许多options 的解释。


jar 帮组文档内容:


C:>jar

用法:jar {ctxu}[vfm0Mi] [jar-文件] [manifest-文件] [-C 目录] 文件名 ...
选项:
-c 创建新的存档
-t 列出存档内容的列表
-x 展开存档中的命名的(或所有的〕文件
-u 更新已存在的存档
-v 生成具体输出到标准输出上
-f 指定存档文件名
-m 包含来自标明文件的标明信息
-0 只存储方式;未用ZIP压缩格式
-M 不产生所有项的清单(manifest〕文件
-i 为指定的jar文件产生索引信息
-C 改变到指定的目录,并且包含下列文件:
假如一个文件名是一个目录,它将被递归处理。
清单(manifest〕文件名和存档文件名都需要被指定,按'm' 和 'f'标志指定的相同顺序。
示例1:将两个class文件存档到一个名为 'classes.jar' 的存档文件中:
jar cvf classes.jar Foo.class Bar.class
示例2:用一个存在的清单(manifest)文件 'mymanifest' 将 foo/ 目录下的所有
文件存档到一个名为 'classes.jar' 的存档文件中:
jar cvfm classes.jar mymanifest -C foo/ .

文章评论

做程序猿的老婆应该注意的一些事情
做程序猿的老婆应该注意的一些事情
程序员眼里IE浏览器是什么样的
程序员眼里IE浏览器是什么样的
科技史上最臭名昭著的13大罪犯
科技史上最臭名昭著的13大罪犯
5款最佳正则表达式编辑调试器
5款最佳正则表达式编辑调试器
老美怎么看待阿里赴美上市
老美怎么看待阿里赴美上市
团队中“技术大拿”并非越多越好
团队中“技术大拿”并非越多越好
如何成为一名黑客
如何成为一名黑客
60个开发者不容错过的免费资源库
60个开发者不容错过的免费资源库
老程序员的下场
老程序员的下场
写给自己也写给你 自己到底该何去何从
写给自己也写给你 自己到底该何去何从
为啥Android手机总会越用越慢?
为啥Android手机总会越用越慢?
聊聊HTTPS和SSL/TLS协议
聊聊HTTPS和SSL/TLS协议
十大编程算法助程序员走上高手之路
十大编程算法助程序员走上高手之路
一个程序员的时间管理
一个程序员的时间管理
程序猿的崛起——Growth Hacker
程序猿的崛起——Growth Hacker
旅行,写作,编程
旅行,写作,编程
总结2014中国互联网十大段子
总结2014中国互联网十大段子
鲜为人知的编程真相
鲜为人知的编程真相
初级 vs 高级开发者 哪个性价比更高?
初级 vs 高级开发者 哪个性价比更高?
程序员最害怕的5件事 你中招了吗?
程序员最害怕的5件事 你中招了吗?
程序员和编码员之间的区别
程序员和编码员之间的区别
“懒”出效率是程序员的美德
“懒”出效率是程序员的美德
Java程序员必看电影
Java程序员必看电影
Web开发人员为什么越来越懒了?
Web开发人员为什么越来越懒了?
当下全球最炙手可热的八位少年创业者
当下全球最炙手可热的八位少年创业者
代码女神横空出世
代码女神横空出世
那些争议最大的编程观点
那些争议最大的编程观点
要嫁就嫁程序猿—钱多话少死的早
要嫁就嫁程序猿—钱多话少死的早
如何区分一个程序员是“老手“还是“新手“?
如何区分一个程序员是“老手“还是“新手“?
程序员周末都喜欢做什么?
程序员周末都喜欢做什么?
看13位CEO、创始人和高管如何提高工作效率
看13位CEO、创始人和高管如何提高工作效率
编程语言是女人
编程语言是女人
中美印日四国程序员比较
中美印日四国程序员比较
程序员都该阅读的书
程序员都该阅读的书
Web开发者需具备的8个好习惯
Web开发者需具备的8个好习惯
程序员必看的十大电影
程序员必看的十大电影
不懂技术不要对懂技术的人说这很容易实现
不懂技术不要对懂技术的人说这很容易实现
亲爱的项目经理,我恨你
亲爱的项目经理,我恨你
 程序员的样子
程序员的样子
Java 与 .NET 的平台发展之争
Java 与 .NET 的平台发展之争
我跳槽是因为他们的显示器更大
我跳槽是因为他们的显示器更大
什么才是优秀的用户界面设计
什么才是优秀的用户界面设计
我的丈夫是个程序员
我的丈夫是个程序员
我是如何打败拖延症的
我是如何打败拖延症的
漫画:程序员的工作
漫画:程序员的工作
软件开发程序错误异常ExceptionCopyright © 2009-2015 MyException 版权所有