jar - 操作jar包的工具
jar - Manipulates Java Archive (JAR) files.
jar命令是一种通用的存档和压缩工具,基于ZIP和ZLIB压缩格式。
常用格式:
* 创建jar文件
jar c[efmMnv0] [jarfile] [manifest] [-C dir] file
* 更新jar
jar u[efmMnv0] [jarfile] [manifest] [-C dir] file
* 解压jar
jar x[vf] [jarfile] file
* 列出jar目录文件
jar t[vf] [jarfile] file
* jar文件添加索引
jar i jarfile [-Joption ...]
常用选项:
- -c :创建新har文件
- -t :列出档案目录
- -x :从档案中提取指定的(或所有)的文件
- -u :更新现有档案
- -v :输出详细信息
- -f :指定档案名
- -m :包含指定清单文件中的清单信息
- -M :不创建条目的清单文件
- -i :为指定的jar文件生成索引信息
- -C :更改为指定的目录并包含以下文件
示例:
~]# jar xf businessShopService-1.0.jar BOOT-INF/lib/ #解压出BOOT-INF/lib目录
~]# ls
]# ls
BOOT-INF businessShopService-1.0.jar test.class~]# rm -rf BOOT-INF~]# jar -xf businessShopService-1.0.jar #解压jar包,后还可根jar包内目录路径,只解压出某个你想要的路径
~]# ls
BOOT-INF businessShopService-1.0.jar META-INF org test.class~]# jar -tf businessShopService-1.0.jar #查看jar包内所有文件路径
添加文件进jar包:
#这里我们给此jar包org内添加test目录和目录下的test.class文件
~]# jar tf commons-beanutils-1.9.3.jar | grep "org/test" ~]# ls
commons-beanutils-1.9.3.jar test.class
~]# cat test.class
hello world
~]# mkdir org/test -p
~]# mv test.class org/test/ #这里新增的文件路径得和jar包内的目录对应起来,不然会提示没有这个文件或目录。~]# jar uvf commons-beanutils-1.9.3.jar org/test/test.class #将文件增加进jar包的相应目录下,如jar包中没有此目录,则会自动创建
adding: org/test/test.class(in = 12) (out= 14)(deflated -16%)
~]# jar tf commons-beanutils-1.9.3.jar | grep "org/test" #文件加入成功。
org/test/test.class#查看jar包内新增文件内容是否正确
~]# cat $(jar tf commons-beanutils-1.9.3.jar| grep test.class)
hello world
替换jar包内容:
#修改test.class内容
~]# echo "hello world! " > org/test/test.class #替换文件,操作与新增一致。
~]# jar uvf commons-beanutils-1.9.3.jar org/test/test.class #将文件增加进jar包的相应目录下,如jar包中没有此目录,则会自动创建
adding: org/test/test.class(in = 12) (out= 14)(deflated -16%)
~]# jar tf commons-beanutils-1.9.3.jar | grep "org/test" #文件加入成功。
org/test/test.class#查看jar包内替换文件内容是否正确
~]# cat $(jar tf commons-beanutils-1.9.3.jar org/test/test.class) #路径是jar包内文件的路径
hello world!
多个不同目录下文件更新。打入包的规则是,有则覆盖,没有则新增。所以有多个文件需要更新时,只需要把要更新的文件的目录结构创建好,直接更新目录即可。
]# jar uvf commons-beanutils-1.9.3.jar org/ #后直接写目录即可。
...
参考博客:https://blog.csdn.net/sparkstrike/article/details/61922307
转载于:https://www.cnblogs.com/dance-walter/p/10287323.html
jar - 操作jar包的工具相关推荐
- 07_数据库创建,添加c3p0操作所需的jar包,编写c3p0-config.xml文件,编写User.java,编写jdbcUtils.java实现操作数据库的模板工具类,UserDao编写,Dao
1 创建day14数据库,创建user.sql表: A 创建数据库 day14 B 创建数据表 users create table users ( id int primary keyaut ...
- eclipse导入jar包_在命令行上操作JAR,WAR和EAR
eclipse导入jar包 尽管Java IDE和许多图形工具使查看和操作Java归档文件(JAR,WAR和EAR)文件的内容比以往更加容易,但有时我还是更喜欢使用命令行jar命令来完成这些任务. 当 ...
- jar包扫描工具: gamma
1. 简介 本项目是一个jar包扫描工具,可以支持插件化订制不同的扫描逻辑 支持以下功能: 插件化订制扫描逻辑,让扩展更加容易 将扫描到的文件加载到jvm中以class的形式返回给处理插件,让扫描逻辑 ...
- 什么是log文件、jar文件、phar文件、Composer、包管理工具?
log文件 log即日志,log文件就是日志文件,记录系统里进行的一些操作,也可以分析日志文件,查看系统里是否有反常行为,从而判断系统是否被入侵. jar文件 jar即Java ARchive,jav ...
- java excel 操作 jar包_[JAVA]使用POI向Excel中写入数据以及如何在Intellj IDEA中打jar包...
freddon 发表于2018-05-30 阅读 1383 | 评论 0 给GF写的,现在记录下POI操作Excel读写过程;以及如何在Intellj IDEA中打jar包 代码如下: ``` imp ...
- java -jar 执行jar包出现 java.lang.NoClassDefFoundError
http://www.cnblogs.com/xuzimian/p/7599304.html 我用idea工具将自己开发java程序打成一个可执行的jar包,当然用eclipse或者直接用jar命令行 ...
- jacob.jar 操作word文件 添加水印、图片(附查阅Microsoft Office VBA参考文档方式)
jacob.jar 操作word文件 添加水印.图片 1.准备jacob.jar包和dll文件 将jacob.jar引入到工程, 64位: 将jacob-1.17-M2-x64.dll 放在C:\Wi ...
- 【Java】jar解压后重新打成jar,不依靠开发工具
一.背景: 参考了网上的经验和Java在dos中的语句,实现将jar包解压成文件夹修改其中配置文件,在不依靠开发工具的情况下重新打回jar包. 二.具体步骤 1.如图所示,其他的是lib ...
- ear包目录_Java中的JAR/EAR/WAR包的文件夹结构说明(转)
JAR包:打成JAR包的代码,一般作为工具类,在项目中,会应用到N多JAR工具包. WAR包:JAVA WEB工程,都是打成WAR包,进行发布,如果我们的服务器选择TOMCAT等轻量级服务器,一般就打 ...
最新文章
- -bash: sz: command not found
- 分布式、高并发、多线程,到底有什么区别?
- Android的消息处理机制——Looper,Handler和Message浅析
- 判断一个数是不是回文数
- Vue 使用 screenfull 实现全屏
- 二元相图软件_FactSage 软件教程 入门学习资料汇总
- html显示pcd,PCD5043 Datasheet(数据表) 10 Page - NXP Semiconductors
- Leetcode算法题(C语言)5--存在重复
- Activity——思维导图
- ⭐图例结合超硬核讲解shiro⭐
- git clean使用方法
- 玩平衡小车系列—TB6612FNG与直流电机控制教程
- JavaScript---文件下载处理文件下载失败兼容IE11文件下载
- mysql常用存储引擎以及悲观锁与乐观锁
- Ubuntu Linux的虚拟机安装Windows86X虚拟机安装(Ubuntu ISO64Bit)
- html表格纵向变横向,html表格,表头竖向固定,横向滚动的例子
- 【日语】编程相关日语词汇
- win7搜索文件 服务器,win7系统搜索不到文件的解决方法
- iPhone与win10传输大文件,使用局域网
- HDU5438--Ponds (拓排+BFS)
热门文章
- 如何正确选择开源数据库?你需要这的5个技巧
- fiddler抓取https请求
- deepin linux下python安装mysqldb
- 109. Convert Sorted List to Binary Search Tree
- [计算机网络] C++模拟telnet登陆SMTP服务发送邮件过程
- 尝试用单元测试做spring注入调用service
- sql server 2008 64位连接sql 2000服务器出错解决办法
- Activity动画效果笔记
- codevs 4560 NOIP2015 D2T2 子串
- 《博客园精华集--Sharepoint分册》第三轮结果