解压jar包

jar xf xxx.jar

打包成jar包

方法一:通过jar命令

jar命令的用法:

下面是jar命令的帮助说明:

用法:jar {ctxui}[vfm0Me] [jar-file] [manifest-file] [entry-point] [-C dir] files ...

选项包括:
   
-c  创建新的归档文件
   
-t  列出归档目录
   
-x  解压缩已归档的指定(或所有)文件
   
-u  更新现有的归档文件
   
-v  在标准输出中生成详细输出
   
-f  指定归档文件名
   
-m  包含指定清单文件中的清单信息
   
-e  为捆绑到可执行 jar 文件的独立应用程序
       
指定应用程序入口点
   
-0  仅存储;不使用任何 ZIP 压缩
   
-M  不创建条目的清单文件
   
-i  为指定的 jar 文件生成索引信息
   
-C  更改为指定的目录并包含其中的文件
如果有任何目录文件,则对其进行递归处理。
清单文件名、归档文件名和入口点名的指定顺序
与 "m"、"f" 和 "e" 标志的指定顺序相同。

示例 1:将两个类文件归档到一个名为 classes.jar 的归档文件中:
      
jar cvf classes.jar Foo.class Bar.class
示例 2:使用现有的清单文件 "mymanifest" 并
          
将 foo/ 目录中的所有文件归档到 "classes.jar" 中:
      
jar cvfm classes.jar mymanifest -C foo/ .

下文假设编译后的class文件在bin目录下

一、打包成一般的jar包

输入如下命令即可:

jar cvf counter.jar -C bin .  

其中,“-C bin”实际上是告诉jar命令先cd到bin目录下,再在此目录执行没有参数“-C bin”的命令,等价于:

cd bin

jar cvf counter.jar . // "."代表当前路径

二、打包成可运行的jar包

要打包成可运行的jar包,有两种方法,一是手动创建MANIFEST.MF文件,并在其中指定主类;二是使用jar的-e参数指定可运行jar包的入口点(即main类的完全名称).

以Java源代码行数统计程序的打包为例,演示如何打包:

1. 手动创建MANIFEST.MF文件:

1)首先编辑MANIFEST.MF文件,内容如下:

Manifest-Version: 1.0

Created-By: rsljdkt

Class-Path: .

Main-Class: Main

说明:

第一行指定清单的版本,若无,则JDK默认生成:Manifest-Version:
1.0

第二行指明创建的作者,若无,则JDK默认生成Created-By:
1.6.0_22(Sun Microsystems Inc.)

第三行指定主类所在类路径,

第四行指明程序运行的主类

2)使用jar命令进行打包:

jar cvfm counter.jar MANIFEST.MF -C bin .

说明:

参数f:指定打包后的包名。

参数m:指定自定义的MANIFEST.MF清单文件,否则,JDK会自动生成不包含Main-Class的默认清单。

参数c:指定是创建新的归档文件。

参数v:在标准输出中生成详细输出,该选项是可选的。

2.
使用-e参数指定入口点:

执行如下命令即可:

jar cvfe counter.jar Main -C bin .

方法二:使用Eclipse的Export功能:

一、打包成一般的jar包:

步骤如下:

1)在要打包的项目上右击,选择Export

2)在弹出的窗口中,选择Java -> JAR
File,然后点击next按钮

3)在JAR File
Specification窗口中,设置打包成的文件名和存放位置,点击两侧next

4)在JAR Manifest
Specification窗口中,设置MANIFEST.MF清单文件的配置,

若仅仅打包成单纯的jar包的话,不用做任何修改,采取默认即可

若打包成可执行jar包的话,可以使用已存在的MANIFEST文件或者直接选择Main class

5)点击Finish按钮,完成打包。

二、打包成可运行的jar包

步骤如下:

1)在要打包的项目上右击,选择Export

2)在弹出的窗口中,选择Java ->
Runnable JAR File,然后点击next按钮

3)在Runnable JAR File
Specification窗口中,选择Launch configuration和Export destination

4)点击Finish按钮,打包完成。

最新文章

  1. asp.net mvc 设置启动页面在区域中
  2. 移动 Web 开发技巧之(后续)
  3. [HDU 5135] Little Zu Chongzhi's Triangles (dfs暴搜)
  4. CSS的绝对定位和相对定位
  5. system.getProperties()
  6. POJ2104-- K-th Number(主席树静态区间第k大)
  7. ARM指令集学习总结-转载
  8. Yii实现Password Repeat Validate Rule
  9. vb中创建xml
  10. web安全认证机制知多少
  11. Spring MVC 响应视图(六)
  12. ABP 依赖注入
  13. POJ 3662 Telephone Lines【二分答案+最短路】||【双端队列BFS】
  14. Win10系列:JavaScript页内导航
  15. Linux yum源完全配置
  16. 零行代码为 App 添加异常加载占位图
  17. SOA架构商城一
  18. (四)Web应用开发---系统架构图
  19. New Document (2)
  20. 使用log4net记录日志到数据库(含有自定义属性)

热门文章

  1. POJ 3258 River Hopscotch
  2. android:sharedUserId 获取系统权限
  3. Intent和Intent Filter Context
  4. 人工神经网络(ANN)
  5. 教你看懂网上流传的60行JavaScript代码俄罗斯方块游戏
  6. mysql 服务无法启动 服务没有报告任何错误
  7. 如何使用网盘托管git项目
  8. mysql is marked as crashed and should be repaired错误
  9. 连接oracle读取数据
  10. strstr 函数用法