jar命令是大部分java程序员常用的工具之一,这里简单介绍一下常用的jar 命令。呵呵!
实验目录如下:
| -MANIFEST.MF (file)
| -O2MICRO (directory)
| - ZJH (directory)
| -Encrypt.java (source file)
| -Encrypt.class (class file)
- 创建一个新的jar
/* c - create jar file
* v - output the verbose information
* m - appoint manifest.mf file
* f - jar filename
* 注意后面的参数顺序要和前面的参数选项次序保持一致
*/
F:>jar cvmf o2micro.jar MANIFEST.MF o2micro/
标明清单(manifest)
增加:o2micro/(读入= 0) (写出= 0)(存储了 0%)
增加:o2micro/zjh/(读入= 0) (写出= 0)(存储了 0%)
增加:o2micro/zjh/Encrypt.class(读入= 3328) (写出= 1737)(压缩了 47%)
增加:o2micro/zjh/Encrypt.java(读入= 3807) (写出= 1199)(压缩了 68%)
- 查看jar文件的清单信息
F:> jar -tf zjh.jar
META-INF/
META-INF/MANIFEST.MF
o2micro/
o2micro/zjh/
o2micro/zjh/Encrypt.class
o2micro/zjh/Encrypt.java
- 更新jar文件的内容信息(通常版本升级中很有用的东东)
F:>jar -uf zjh.jar o2micro
- 解压jar文件的内容
F:/>jar -xf zjh.jar //解压整个jar文件
F:/>jar -xf zjh.jar META-INF/MANIFEST.MF //仅仅解压指定的文件 (MEAT-INF/MANIFEST.MF) - 运行jar文件
/*
* 必须保证jar包中的MANIFEST.MF中指定了main-class属性
*/
F:>java -jar zjh.jar
Output: Hello World!
MANIFEST.MF 内容:
F:>cat MANIFEST.MF
Manifest-Version: 1.0
Created-By: 1.5.0_04 (Sun Microsystems Inc.)
Main-Class: o2micro.zjh.Encrypt
- BTW, 编译java程序
F:>javac ssss.java
//注意文件名的写全,包括后缀
//如果存在所需要的库文件不在系统变量path中,则需要使用javac -cp library-path ssss.java
//若编译失败或者警告,会给出相应提示
- BTW,执行java程序
F:>java ssss
//注意ssss指的是ssss.class文件,但不能加后缀名,因为如果加上jvm会认为是ssss/class文件,即把ssss当成包的名称
//要想ssss能被运行,则在ssss.class中必须包含main函数,否则回报错
Output: HelloWorld