生成Jar包以及指定初始类入口

jar:JavaTM Archive (JAR) file,java存档文件

我们的输入(要压缩的东西)主要是class文件,还有辅助的资源(这其中可能有图片,jsp文件,html文件等等)。

用法:jar {ctxu}[vfm0Mi] [jar-文件] [manifest-文件] [-C 目录] 文件名 ...   
  选项:   
  [i][color=blue]
-c 创建新的存档
  -t 列出存档内容的列表
  -x 展开存档中的命名的(或所有的〕文件
  -u 更新已存在的存档
  -v 生成详细输出到标准输出上
  -f 指定存档文件名
  -m 包含来自标明文件的标明信息
  -0 只存储方式;未用zip压缩格式
  -M 不产生所有项的清单(manifest〕文件
  -i 为指定的jar文件产生索引信息
  -C 改变到指定的目录,并且包含下列文件:
[/color][/i]     

  清单(manifest〕文件名和存档文件名都需要被指定,按'm' 和 'f'标志指定的相同顺序。   

  示例1:将两个class文件存档到一个名为 'classes.jar' 的存档文件中:
  [color=blue][i]jar cvf classes.jar Foo.class Bar.class    [/i][/color]

  示例2:用一个存在的清单(manifest)文件 'mymanifest' 将 foo/ 目录下的所有文件存档到一个名为 'classes.jar' 的存档文件中:
  [i][color=blue]jar cvfm classes.jar mymanifest -C foo/ .[/color][/i]   
_____________________________________________________________________
  我们只有一个HelloWorld,如下:   

  [i]public class HelloWorld{
   public static void main(String[ ] args){
   System.out.println("Hi, Hello World!");
   }
  } [/i] 
  将这个java文件存到C盘跟目录下,ok,接下来,   
  >javac HelloWorld.java
>jar cvf hello.jar HelloWorld.class  

  打开刚刚做好的helloword.jar包,多了META-INF目录,其中包含一个MANIFEST.MF文件,其内容是:
  [i]Manifest-Version: 1.0
  Created-By: 1.4.2 (Sun Microsystems Inc.) [/i]  

  加一句:Main-Class: HelloWorld(在第三行)。这个就是我们之前写的那个类,也就是我们的入口类。也即,
  [i]Manifest-Version: 1.0
  Created-By: 1.4.2 (Sun Microsystems Inc.)
  [b]Main-Class: HelloWorld[/b] [/i] 

  接下来,我们在命令提示符里执行:
  >jar umf MANIFEST.MF hello.jar 

  这样我们使用了我们自己的MANIFEST.MF文件对原来默认的进行了更新
  >java -jar hello.jar   

  Hi, Hello World!  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值