命令行对jar包的解压和压缩

命令行对jar包的解压和压缩

把经常用的放到开始吧!!

1、解压某个jar包:在需要解压的jar包目录下,按住shift建右击【在此处打开命令行】,输入:C:\jar>jar xf lm.jar 没有任何反应就表示解压成功。
2、压缩jar包:命令:jar cvf lm.jar 文件1 文件2 文件3 文件4          回车      压缩后的jar包就在本目录下,这样容易丢掉文件,可以这样

命令jar cvf lm.jar ./  就全部压缩了

下面试详细的的百度内容,如有需要可以参考:

 我们经常见到的jar包是jar命令生成的,Java语言为我们在安装jdk的时候,就随jdk为我们在bin目录中安装好了,在windows系统中是jar.exe程序,Linux系统中为jar文件。

jar命令有生成,查看,更新或解开jar包的作用。jar包与其他的压缩包很相似,不过它包含了META-INF/MANIFEST.MF文件,它是jar包生成的时候,自动创建的。

jar命令的参数详解:

C:\>jar cf lm.jar
'c' 标志要求指定清单或输入文件!
用法: 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/ .

实例1.
C:\>jar cf lm.jar Lm.class Lm.java

结果:在c盘下创建了Executable Jar File类型的lm.jar包。

实例2.添加v参数显示打包详细过程,

C:\jar>jar cvf lm.jar Lm.class
标明清单(manifest)
增加:Lm.class(读入= 410) (写出= 283)(压缩了 30%)

其中c参数表示创建jar包,f参数是指定的jar包文件名。在使用jar命令的时候,要指定必须的参数,告诉他你要做什么操作。这些参数包括

-c 创建新的归档文件
-t 列出归档目录
-x 解压缩已归档的指定(或所有)文件
-u 更新现有的归档文件

实例3.运行刚生成的jar包:

C:\>java -jar lm.jar
Failed to load Main-Class manifest attribute from
lm.jar

根据英文错误提示,好像读取lm.jar包的manifest属性失败。

实例4.创建不包含META-INF/MANIFEST.MF文件的jar包

C:\jar>jar cvfM lm1.jar Lm.class
增加:Lm.class(读入= 410) (写出= 283)(压缩了 30%)

实例5.显示jar包中的文件

C:\jar>jar tf lm.jar
META-INF/
META-INF/MANIFEST.MF
Lm.class

实例6.由于创建jar包的时候用了M参数所以就没有META-INF目录和META-INF/MANIFEST.MF文件

C:\jar>jar tf lm1.jar

Lm.class

实例7.显示jar包的文件和文件详细信息


C:\jar>jar tvf lm.jar
0 Mon Sep 26 23:09:34 CST 2011 META-INF/
75 Mon Sep 26 23:09:34 CST 2011 META-INF/MANIFEST.MF
410 Mon Sep 26 22:09:00 CST 2011 Lm.class

这些详细信息包括读入的字节,jar包中读入的时间,目录或文件名

实例8.解压jar包到当前目录中


C:\jar>jar xf lm.jar

不显示任何信息,但是解压成功

把经常用的放到开始吧!!

1、解压某个jar包:在需要解压的jar包目录下,按住shift建右击【在此处打开命令行】,输入:C:\jar>jar xf lm.jar 没有任何反应就表示解压成功。
2、压缩jar包:命令:jar cvf lm.jar 文件1 文件2 文件3 文件4          回车      压缩后的jar包就在本目录下,这样容易丢掉文件,可以这样

命令jar cvf lm.jar ./  就全部压缩了

下面试详细的的百度内容,如有需要可以参考:

 我们经常见到的jar包是jar命令生成的,Java语言为我们在安装jdk的时候,就随jdk为我们在bin目录中安装好了,在windows系统中是jar.exe程序,Linux系统中为jar文件。

jar命令有生成,查看,更新或解开jar包的作用。jar包与其他的压缩包很相似,不过它包含了META-INF/MANIFEST.MF文件,它是jar包生成的时候,自动创建的。

jar命令的参数详解:

C:\>jar cf lm.jar
'c' 标志要求指定清单或输入文件!
用法: 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/ .

实例1.
C:\>jar cf lm.jar Lm.class Lm.java

结果:在c盘下创建了Executable Jar File类型的lm.jar包。

实例2.添加v参数显示打包详细过程,

C:\jar>jar cvf lm.jar Lm.class
标明清单(manifest)
增加:Lm.class(读入= 410) (写出= 283)(压缩了 30%)

其中c参数表示创建jar包,f参数是指定的jar包文件名。在使用jar命令的时候,要指定必须的参数,告诉他你要做什么操作。这些参数包括

-c 创建新的归档文件
-t 列出归档目录
-x 解压缩已归档的指定(或所有)文件
-u 更新现有的归档文件

实例3.运行刚生成的jar包:

C:\>java -jar lm.jar
Failed to load Main-Class manifest attribute from
lm.jar

根据英文错误提示,好像读取lm.jar包的manifest属性失败。

实例4.创建不包含META-INF/MANIFEST.MF文件的jar包

C:\jar>jar cvfM lm1.jar Lm.class
增加:Lm.class(读入= 410) (写出= 283)(压缩了 30%)

实例5.显示jar包中的文件

C:\jar>jar tf lm.jar
META-INF/
META-INF/MANIFEST.MF
Lm.class

实例6.由于创建jar包的时候用了M参数所以就没有META-INF目录和META-INF/MANIFEST.MF文件

C:\jar>jar tf lm1.jar

Lm.class

实例7.显示jar包的文件和文件详细信息


C:\jar>jar tvf lm.jar
0 Mon Sep 26 23:09:34 CST 2011 META-INF/
75 Mon Sep 26 23:09:34 CST 2011 META-INF/MANIFEST.MF
410 Mon Sep 26 22:09:00 CST 2011 Lm.class

这些详细信息包括读入的字节,jar包中读入的时间,目录或文件名

实例8.解压jar包到当前目录中


C:\jar>jar xf lm.jar

不显示任何信息,但是解压成功

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
Android SDK开发包国内官网下载地址.pdf 不知道是因为最近kaihui还是怎么的,打开android sdk官方网站特别的慢,想下载最新版本的platform几乎变成不可能完成的任务,不知道为什么Google不像Apache那样在各国设立镜像站。为了预防今后再出现这样的情况,这次干脆把android开发所需要的各种包总结一下,顺便提供本地下载链接,省得以后找起来麻烦。 通过分析SDK Manager里要用到的repository文件,我下载了目前google提供的各类安卓开发包并上传到了网盘。由于网盘有CDN支持,即使不用迅雷,下载速度依然很快。如果你从官网下载很慢,不妨试试这些国内链接。 注1、有些包分操作系统版本,例如windows版、macos版和linux版,下载时注意文件名里的标识。 注2、此帖长期更新,若有未及时更新的版本或失效链接,请留言通知主页君。 注2013/3/4:有一小部分下载链接失效,经查是由于未知原因被百度网盘禁止分享了,请过一段时间再试。 ADT Bundle 多合一下载包,里面包含了:sdk + 特定版本platform + eclipse + adt + 兼容包,解压缩即可使用。唯一的缺点是体积比较大,如果你是从零开始配Android开发环境就下载吧。(可惜官方提供的windows版是64位的eclipse,暂时没有32位版本,等有时间了我自己压一个。 Update2012/12/3: 官网已放出了32位版本) 文件名 文件大小 说明 其他下载地址 adt-bundle-17-windows-x86.zip 398.0M Android 4.2多合一开发包, Windows 32位。 官网 adt-bundle-17-windows-64bit.zip 398.0M Android 4.2多合一开发包, 注意所含eclipse是64位的。 官网 注:官网文件名不带版本号,应该对应“最新版”地址,下同。 adt-bundle-17-mac.zip 365.0M Mac OS 官网 adt-bundle-17-linux.zip 392.0M Linux 32位 官网 adt-bundle-linux-x86_64.zip Linux 64位 官网 假设你把sdk安装到d:\android-sdk,则里面的目录结构应该是这样的: d:\android-sdk\tools 这个目录里有ddms.bat等文件 d:\android-sdk\system-images\android-17\armeabi-v7a 这个目录里有userdata.img等文件(r14及以上才有这个目录) d:\android-sdk\platforms\android-4.0.2 这个目录里有android.jar等文件 d:\android-sdk\platform-tools 这个目录里有adb.exe等文件 d:\android-sdk\extras 这个目录里有android等目录 当你下载下面列出的部件时,也请参考上面的目录结构示例将内容放在正确的位置。 Android SDK SDK就是开发包,里面包含了两大类命令行工具:一类是SDK Tools,如android.bat、ddms.bat和emulator.exe等等,这些命令位于\tools目录,但运行仿真器所需的rom并不包含在内;另一类是Platform Tools,包含了如adb.exe、aidl.exe、aapt.exe等等命令,它们位于\platform-tools目录。 请区别清这几个名称:SDK、SDK Tools、Platform Tools、Platform Package。 文件名 文件大小 说明 其他下载地址 installer_r21-windows.exe 73.9M 官方推荐下载这个安装包,是32位的 官网 android-sdk_r21-windows.zip 94.5M 文件名里虽然是"sdk",其实不含platform-tools, 叫"sdk tools"更合适。 官网 android-sdk_r21-macosx.zip 62.7M 官网 android-sdk_r21-linux.tgz 87.1M 官网 SDK安装/解压缩后,只具有基本的功能,还无法开始进行开发。你还需要platform-tools和至少一个platform package才算完整。在eclipse里通过SDK Manager是可以在线安装的,但有时手动安装也许更快。 文件名 文件大小 说明 其他下载地址 platform-tools_r14-linux.zip 10.4M 将platform-tools目录解压到sdk所在目录 官网 platform-tools_r14-macosx.zip 10.8M 官网 platform-tools_r14-windows.zip 10.6M 官网 假如你已经安装过android sdk,想单独升级tools,可以从下面的文件中选择所需要的压缩包下载,然后替换掉sdk目录下的对应子目录。 文件名 文件大小 说明 其他下载地址 tools_r20.0.3-linux.zip 78.8M 和第一个表里的"sdk"相比,只少了avd manager和sdk manager。 建议仅在需要升级时下载,用tools目录替换原来的同名目录。 官网 tools_r20.0.3-macosx.zip 55.5M 官网 tools_r20.0.3-windows.zip 86.0M 官网 ADT ADT(Android Development Tools)是一个Eclipse插件,如果没有这个插件,我们开发Android应用就得不停在命令行里敲各种命令,除非你是记事本开发狂人,否则还是老老实实享受ADT带来的方便吧。至于Eclipse本身可以去eclipse.org下载,这里就不再提供了。 文件名 文件大小 说明 其他下载地址 ADT-21.0.0.zip 12.9M 官网 ADT-20.0.3.zip 11.8M 官网 ADT-12.0.0.zip 5.4M 如果你不习惯新版的ADT,这个版本也许适合你。 官网 ADT的版本号基本上是跟着SDK Tools走,即每出一个新版本的SDK Tools,就出一个同样版本的ADT。不过实际使用中,即使是老版本的ADT也能对新版SDK支持得不错。 Platforms Android系统版本从1.0到写这篇帖子时的4.2,大大小小已经经历了10多个版本,每个版本发布时Google都会提供一个sdk platform package供开发者使用。一般这个压缩包是在Eclipse开发环境里用SDK Manager来下载的,但在国内选择这种方式会很痛苦,因为每个platform都有几十上百兆大,装一个就得几个小时,好像还不能断点续传(?)。 在国内,更方便的做法是先下载离线包,然后解压缩到android sdk的安装目录下,重启Eclipse后就会自动识别出来。 文件名 文件大小 说明 其他下载地址 android-17_r01.zip 45.6M Android 4.2 官网 sysimg_armv7a-17_r01.zip 111.0M 仅仿真器rom 官网 android-16_r03.zip 45.7M Android 4.1, 4.1.1, JELLY_BEAN 官网 sysimg_armv7a-16_r03.zip 107.0M 仅仿真器rom 官网 android-15_r03.zip 42.3M Android 4.0.3, 4.0.4, ICE_CREAM_SANDWICH_MR1 官网 sysimg_armv7a-15_r02.zip 91.7M 仅仿真器rom 官网 android-14_r03.zip 43.7M Android 4.0, 4.0.1, 4.0.2, ICE_CREAM_SANDWICH 官网 sysimg_armv7a-14_r02.zip 95.0M 仅仿真器rom 官网 android-3.2_r01-linux.zip 103.0M API Level 13, HONEYCOMB_MR2 文件名虽然有linux但其实是平台无关的,下同,直至2.1。 官网 android-3.1_r03-linux.zip 101.0M API Level 12, HONEYCOMB_MR1 官网 android-3.0_r02-linux.zip 99.6M API Level 11, HONEYCOMB 官网 android-2.3.3_r02-linux.zip 81.5M API Level 10, GINGERBREAD_MR1 官网 android-2.3.1_r02-linux.zip 75.0M API Level 9, GINGERBREAD 官网 android-2.2_r03-linux.zip 71.1M API Level 8, FROYO 官网 android-2.1_r03-linux.zip 66.8M API Level 7, ECLAIR_MR1 官网 android-2.0_r01-windows.zip 72.7M API Level 5, ECLAIR 官网 android-2.0_r01-macosx.zip 71.4M 官网 android-2.0_r01-linux.zip 71.6M 官网 android-2.0.1_r01-windows.zip 76.6M API Level 6, ECLAIR_0_1 官网 android-2.0.1_r01-macosx.zip 75.3M 官网 android-2.0.1_r01-linux.zip 75.5M 官网 android-1.6_r03-windows.zip 61.6M API Level 4, DONUT 官网 android-1.6_r03-macosx.zip 59.5M 官网 android-1.6_r03-linux.zip 60.5M 官网 android-1.5_r04-windows.zip 52.0M API Level 3, CUPCAKE 官网 android-1.5_r04-macosx.zip 50.0M 官网 android-1.5_r04-linux.zip 50.8M 官网 android-1.1_r1-windows.zip 44.6M API Level 2 官网 android-1.1_r1-macosx.zip 43.4M 官网 android-1.1_r1-linux.zip 43.3M 官网 从Level 14开始,每个platform package都被分为两部分了,一部分包含这个版本下开发所需的jar包,例如android-16_r03.zip;另一部分是仿真器rom文件,例如sysimg_armv7a-16_r03.zip。最近的版本除了arm仿真器,还有x86仿真器可供下载(由intel提供),据说在x86电脑上运行能够大幅提速。如果你只在真机上调试代码,则不需要下载仿真器rom对应的文件。 更详细的Android版本对照表可以参考这里。 Documents 供Android开发参考用的官方文档,文件比较大。我习惯有一个本地的文档,然后配合Everything使用,非常方便,文档里有很多内容源码里是没有的。 文件名 文件大小 说明 其他下载地址 docs-17_r01.zip 163.0M 官网 docs-16_r03.zip 156.0M 官网 docs-15_r02.zip 126.0M 官网 docs-14_r01.zip 104.0M 官网 Sources 我比较懒,从来没有用git下载过android源代码,如果你想用git下载,可以参考这篇文章里的操作方法。 官方目前提供了一些源代码压缩包,如下表所列,这些压缩包可以attach到eclipse里方便随时F3查看;最重要的是,有了源代码以后,Eclipse里代码辅助出来的参数名再也不会是"arg0"、"arg1"这样的了。 文件名 文件大小 说明 其他下载地址 sources-17_r01.zip 18.0M 官网 sources-16_r02.zip 17.0M 官网 sources-15_r02.zip 15.7M 官网 sources-14_r01.zip 15.4M 官网 sources-8-froyo.zip 33.3M (非官方) 官网 sources_2.1.zip 30.0M (非官方) 官网 sources_1.6.zip 22.8M (非官方) 官网 Samples Google提供了丰富的开发示例,如果时间允许多看看这些例子代码和运行效果,对提升手机应用的设计开发能力肯定大有帮助。 文件名 文件大小 说明 其他下载地址 samples-17_r01.zip 14.1M 官网 samples-16_r01.zip 14.0M 官网 samples-15_r02.zip 15.6M 官网 samples-14_r02.zip 15.5M 官网 samples-3.2_r01-linux.zip 11.6M 官网 samples-3.1_r01-linux.zip 11.5M 官网 samples-3.0_r01-linux.zip 11.4M 官网 samples-2.3_r01-linux.zip 8.1M 官网 samples-2.3.3_r01-linux.zip 8.1M 官网 samples-2.2_r01-linux.zip 7.6M 官网 samples-2.1_r01-linux.zip 7.3M 官网 除了上面这些以外,还有AddOns和Supports等分类没来得及整理,等有时间了找一下。 以上内容随时补充更新,欢迎提醒和纠错。
解压JavaJAR包,可以使用以下命令: 在当前文件夹下使用命令行(cmd)解压jar包,可以使用命令"jar -xvf",后接待解压jar包的文件名。例如,要解压名为"shop-order-0.0.1-SNAPSHOT.jar"的jar包,可以使用命令"jar -xvf shop-order-0.0.1-SNAPSHOT.jar"。 另外,如果你不想解压整个jar包,而只是想更新其中的某个文件,可以使用命令"jar -uvf",后接待更新的jar包的文件名和要修改的文件路径。例如,要修改名为"shop-order-0.0.1-SNAPSHOT.jar"的jar包中的"BOOT-INF/classes/application.properties"文件,可以使用命令"jar -uvf shop-order-0.0.1-SNAPSHOT.jar BOOT-INF/classes/application.properties"。 JAR文件是Java的一种文档格式,非常类似ZIP文件。唯一的区别在于JAR文件中多出了一个META-INF/MANIFEST.MF文件。该文件在生成JAR文件时会自动创建(也可以自行创建)。除了解压和更新文件,你还可以使用JAR文件进行反编译操作。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [JavaJar包反编译,解压压缩](https://blog.csdn.net/lishangke/article/details/127850114)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值