[Java] Java 打包成jar包 和 解压jar包
解压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包
输入如下命令即可:
其中,“-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按钮,打包完成。
[Java] Java 打包成jar包 和 解压jar包的更多相关文章
- 使用jar打war包或解压war包
进入Dos命令行,并到目标文件夹,如C:\Temp,待打包的内容在C:\Temp\Blog里,目标,把Blog里的相应文件打成war报 1.打包 C:\Temp\jar -cvf Blog.war . ...
- mvn打war包以及解压包的方法
有时候我们需要查看打成war包之后的目录,如果是maven项目我们可以直接用maven打包. 1.maven打包: 第一种: mvn package 如果不行先 mvn clean一下 第二种:(掌握 ...
- Unix系统解压tar包时出现@LongLink错误
Unix系统上使用tar命令解压tar包后,多了一个@LongLink的文件,并且原来的tar包解压后不完整.网上查了下,原因是AIX系统上tar命令自身的一个缺陷.解决办法:把该tar包上传到lin ...
- 把java文件打包成.jar (jar命令详解)
把java文件打包成.jar (jar命令详解) 先打开命令提示符(win2000或在运行框里执行cmd命令,win98为DOS提示符),输入jar Chelp,然后回车(如果你盘上已经有了jdk1. ...
- 将java project打包成jar包,web project 打包成war包的几种演示 此博文包含图片
转: http://blog.csdn.net/christine_ruan/article/details/7491559 http://developer.51cto.com/art/200907 ...
- 使用Eclipse把java文件打包成jar 含有第三方jar库的jar包
使用Eclipse把java文件打包成jar 含有第三方jar库的jar包 网上打包说用eclipse安装fat jar插件,但是貌似现在都不能用了,所以我只能按照eclipse自带的方法打包了. ...
- 把java项目打包成jar包并可以直接运行【我】
首先创建一个maven的jar项目,然后代码写好后,在项目右键,导出: 选择java下面的可运行的jar文件: 下一步: 要注意的是: launch configuration 此选项是指定选中要导出 ...
- 将java project打包成jar包,web project 打包成war包的几种演示
将java项目打包成jar 第一种:MyEclipse将java项目打包成jar. 1,右击项目,选择export . 2,点击Java,选择JAR file . 3,在JAR file文本中浏览打包 ...
- java项目打包成可运行的jar,main方法带参数
转载 原文地址:http://www.cnblogs.com/neillee/p/6063808.html#commentform 将 java 项目打包成可运行的 jar 包(main 函数带参数) ...
随机推荐
- jQuery返回顶部代码组件
非原创,拿来修改,样式可自定义,div,img都可以,效果如下: 下载地址:http://files.cnblogs.com/files/EasonJim/jquery.topback.rar 项目相 ...
- eclipse启动tomcat错误:A Java Exception has occurred
在tomcat bin目录下执行startup.bat可以正常启动,但在eclipse下安装了tomcat插件并且配置tomcat路径后启动且报错:A Java Exception has occur ...
- IPC机制
转:http://blog.chinaunix.net/uid-26125381-id-3206237.html IPC 三种通信机制 2012-05-13 17:23:55 最近看了,IPC三种通 ...
- eclipse中python文本字体大小设置
eclipse中python脚本用默认的字体和大小,注释是中文的也看不清楚,改一下字体吧 windows-preferences-python-editor-colors and fonts 其实上一 ...
- Mac上的终端(Terminal)启动缓慢
最近重装10.9系统,装完后,发现终端(Terminal)启动之前1秒都不用,现在却需要5-10秒,搜寻了下,发现是终端的统日志导致的问题,只需要执行下下面的命令,终端就又身轻如燕了! sudo rm ...
- poj1787Charlie's Change(多重背包+记录路径+好题)
Charlie's Change Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 3720 Accepted: 1125 ...
- Spring学习8- SSH需要的jar包
struts2 commons-logging-1.0.4.jar 主要用于日志处理 freemarker-2.3.8.jar 模板相关操作需要包 ognl-2.6.11.jar ognl表达示所需包 ...
- Google Protocol Buffer 的使用和原理
Google Protocol Buffer 的使用和原理 Protocol Buffers 是一种轻便高效的结构化数据存储格式,可以用于结构化数据串行化,很适合做数据存储或 RPC 数据交换格式.它 ...
- iOS项目工作空间搭建
一般公司的项目都是一个工作空间包包含两个项目,一个主项目,一个Pods项目,当然也有些就是一个项目,然后把第三方放在项目的文件夹里. 这样做的好处是,项目再次拷贝到其他地方报错的可能性小,而且拷完就能 ...
- tableView左滑删除功能
实现三个代理方法即可 -(NSString *)tableView:(UITableView *)tableView titleForDeleteConfirmationButtonForRowAtI ...