jar 打包 把多个文件打包成一个压缩包 -- 这个压缩包和winzip的压缩格式是一样的 区别在于jar压缩的文件默认多一个WEB-INF的文件夹 该文件夹中生成一个MANIFEST.mf的文件(清单文件) 有三种(压缩格式完全一样 只是后缀名不同) *.jar --包含多个.class文件 *.war --是一个web应用打包生成的包 *.ear --是一个企业应用打包生成的包 为什么要打包 一个项目class文件多不便于管理 加载时需要分别加载每个class 1 便于对文件管理 2 一次加载一个jar包 加载效率高 -c 创建新的归档文件(压缩包) -t 列出压缩包目录 -x 从压缩包中解压指定的 (或所有) 文件 -u 更新现有的压缩包(添加新文件) -v 在标准输出中生成详细输出(dos窗口 显示压缩信息) -f 指定压缩包名 -m 包含指定清单文件中的清单信息 -e 为捆绑到可执行 jar 文件的独立应用程序 指定应用程序入口点() -0 仅存储; 不使用情况任何 ZIP 压缩 -M 不创建条目的清单文件(不生成清单文件) -i 为指定的 jar 文件生成索引信息 -C 更改为指定的目录并包含其中的文件
1. 创建压缩包 jar -cf myTest.jar *.class jar -cvf myTest.jar *.class2. 创建不生成清单的压缩包 jar -cMf myTest.jar *.class jar -cMvf myTest.jar *.class
3. 查看压缩包 jar -tf myTest.jar jar -tvf myTest.jar (同时显示创建时间)4. 解压 jar -xf myTest.jar jar -xvf myTest.jar5. 更新压缩包(添加新文件 替换已有文件) jar -uf myTest.jar Hello.class jar -uvf myTest.jar Hello.class
6. 生成可执行的jar (main方法) jar -cvfe Hello.jar user *.class (user 包含main方法类 但不加后缀名) 或jar -cvef user Hello.jar *.class 装有java虚拟机 则双击直接运行 没有 java -jar Hello.jar 运行也可以
压缩包无非就是 把文件统一管理 所以也可以用windows压缩成 zip或rar 也可以直接引用 (不会生成清单文件)