MOYUN(/Java/SQL/Linux/DevOps/运维/架构/管理/敏捷/开发)

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

一、如何把.class文件生存jar包?

通常的做法是在Eclipse里面直接将项目导出为编译好后的jar包等,例如File→Export→JAR(Runable)即可。但是某些个场景,只修改了单个的class文件等需要放到另外的环境中去测试等,这里介绍另外一种方法是在windows里面的dos里面直接将class文件打包成可执行的jar包,具体就是进入dos操作窗口,cd进入到需要打包的class文件夹里面:jar cvf [生成jar的名称.jar] [列出class文件] 。

1.0、操作零散的单个或几个class文件
  首先在D:\javatemp\classdemo文件夹里面有Hello.class,cmd进入到该目录下执行如下语句
  回车后执行得到对应的Hello.jar的jar文件:

  

2.0、把一个文件夹下面的所有class文件打成jar包

  

3.0、生存可执行的jar文件(main入口函数)
  编译的class文件中必须有main入口函数的类方能生成可执行jar包。例如pulic static void main(String[] args){}
  生存的步骤方法如下
  3.1、用上面的方法把class与相应的结构目录打成jar包
  3.2、解压这个jar包到当前目录
  3.3、编辑META-INF/MANIFEST.MF,给jar包指定程序入口main函数,内容为
    Manifest-Version: 1.0
    Created-By: 1.5.0_06 (Sun Microsystems Inc.)
    Main-Class: Hello

  3.4、再用winzip把这些文件压缩成jar格式包,或者压成zip包,再改后缀名为jar也可(看来这种方法很不给力啊)

  另外一种生存的方法(推荐)
  3.5、cmd操作窗体中进入class文件的根目录,之所以说根目录,是因为下面其下面还可以有很多文件包(夹);
  3.6、在此目录准备好一个manifest.mf文件,其内容为
    Manifest-Version: 1.0
    Created-By: 1.5.0_06 (Sun Microsystems Inc.)
    Main-Class: Hello
  3.7、最后用命令: jar cvfm hello.jar manifest.mf *

  

  
4.0、测试可执行jar包.用命令:java -jar Hello.jar
  
  

5.0、jar选项基本参数定义
  -c 创建新的存档
  -t 列出存档内容的列表
  -x 展开存档中的命名的(或所有的〕文件
  -u 更新已存在的存档
  -v 生成详细输出到标准输出上
  -f 指定存档文件名
  -m 包含来自标明文件的标明信息
  -0 只存储方式;未用ZIP压缩格式
  -M 不产生所有项的清单(manifest〕文件
  -i 为指定的jar文件产生索引信息
  -C 改变到指定的目录,并且包含下列文件:
  PS:如果一个文件名是一个目录,它将被递归处理。
  清单(manifest〕文件名和存档文件名都需要被指定,按'm' 和 'f'标志指定的相同顺序。

posted on 2017-05-21 23:51  moyun-  阅读(3800)  评论(0编辑  收藏  举报