zoukankan      html  css  js  c++  java
  • 怎么样运行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/ . 
    本贴来自ZDNetChina中文社区 http://bbs.zdnet.com.cn ,本贴地址:http://bbs.zdnet.com.cn/viewthread.php?tid=584158 

  • 相关阅读:
    HDU 4472 Count DP题
    HDU 1878 欧拉回路 图论
    CSUST 1503 ZZ买衣服
    HDU 2085 核反应堆
    HDU 1029 Ignatius and the Princess IV
    UVa 11462 Age Sort
    UVa 11384
    UVa 11210
    LA 3401
    解决学一会儿累了的问题
  • 原文地址:https://www.cnblogs.com/u0mo5/p/4057886.html
Copyright © 2011-2022 走看看