如何修改jar文件的内容
在做(或修改别人的)项目的时候,可能遇到要修改调用的的jar包内的类属性或方法的问题。在eclipse或是其他的IDE中是无法直接修改的,所以需要一个解压jar-->修改文件-->编译-->打包成jar文件的过程,下面简要的记录下我是如何做的:
1.将工程中的jar文件拷出来,用解压工具解压得到对应的文件;
2.在文件中找到要修改的class文件,将class文件拷出来,用反编译软件反编译一下得到java文件;(如果包含.java文件就简单了,直接拷贝出.java文件就好了);
3.在eclipse上新建一个工程(工程的目录结构与jar中的一致),再新建一个类文件(类名与要修改的类名一致),把(2)中得到的.java文件的内容拷贝进去
4.这时候可能会报很多错误,因为该类中可能引用了一些其他的包还没有包含进来,根据报错的情况,找到缺少的jar包(原工程中包含这些jar包,可以把原工程的的jar包都拷 过来),拷贝到工程的libs目录下,然后build-path引用到的jar包;
5.这个时候工程不报错了,你可以开始修改该文件了,修改完成之后,按ctr+s保存,就编译完成了,到工程的bin目录下把新生成的.class文件拷出来,替换掉原jar包解压后的文件中要修改的class文件
6.在cd 到解压文件所在目录,通过jar cvf XXX.jar XXX 其中XXX.jar为要打包成的jar文件名 XXX为待打包的文件
打包完成
7.完成之后,就可以当前的目录下找到新生成的jar包了,把它拷贝到原工程中替换掉原来的jar包,这样就大功告成了;
如何修改jar文件的内容相关推荐
- 用Python批量修改hex文件的内容
用Python批量修改hex文件的内容 文章目录 用Python批量修改hex文件的内容 0.前言 1.代码 0.前言 先保存下来,电脑要清空了..... 后续补上:大概关于hex校验码,从大的hex ...
- maven 如何看jar是否被修改_如何在线修改jar文件
上一次在搭建blynk服务器的时候,由于jar包里面的自动发邮件属性不知道如何修改,一直很苦恼,通过查阅资料,找到了方法,在这里分享给大家 首先我们打开电脑上的linux,我这里用的是WIN10带的l ...
- 如何在Windows10系统中修改.jar文件的默认应用
普通方式(无效) 通常,我们在Windows10系统中修改文件的默认应用有两种方式: 打开系统设置->应用->默认应用->按文件类型指定默认应用,找到相应的文件类型后进行修改: 选中 ...
- 如何修改.json文件的内容?
以下是项目过程中遇到的一些数据清洗,预处理和统计等常规操作,有需要的可以自行借鉴下相关模块代码,转载或引用请注明. ########################################## ...
- 修改MP4文件二进制内容,实现安卓Camera2旋转录制视频画面功能
Camera2比起Camera的自定义程度更高一点,比如可以同时输出多个视频流分别用于显示预览画面和录制视频.但是!不同于Camera可以直接使用setOrientation方法直接设置视频旋转角度, ...
- java 修改 jar 包文件内容的一个实例
开发这个小工具的初衷是为了修改工具 jar 包中的配置文件 本来打算将这个功能集成到 工具 jar 包自身 但是这里貌似有点儿问题,因为该 jar 包文件当前正在被 java 虚拟机使用,所以无法对其 ...
- java -uf_Java如何快速修改Jar包里的文件内容
需求背景:写了一个实时读取日志文件以及监控的小程序,打包成了Jar包可执行文件,通过我们的web主系统上传到各个服务器,然后调用ssh命令执行.每次上传前都要通过解压缩软件修改或者替换里面的配置文件, ...
- dataframe保存为txt_如何批量查找并修改替换 Word、PPT、Excel、PDF、TXT等文件的内容...
概要 平时的工作中,我们避免不了与众多 Word 文件.PPT 文件.PDF 文件.TXT 等文件打交道,有时候我们需要对这些文件进行批量修改与替换内容.这里我们介绍了这样的一款工具,它可以很方便快速 ...
- 如何在ppt下面加入讲解内容_如何批量查找并修改替换 Word、PPT、Excel、PDF、TXT等文件的内容——我的ABC...
概要:平时的工作中,我们避免不了与众多 Word 文件.PPT 文件.PDF 文件.TXT 等文件打交道,有时候我们需要对这些文件进行批量修改与替换内容.这里我们介绍了这样的一款工具,它可以很方便快速 ...
最新文章
- 大数据可视化模板_最佳大数据可视化技术
- 【转】Android APK反编译就这么简单 详解(附图)
- 渗透测试工作流程渗透测试类型法律边界
- ClickHouse留存分析工具十亿数据秒级查询方案
- springboot生成包含特定数字_面试必问 —— Spring Boot 是如何实现自动配置的?
- (55)Verilog HDL双沿采样设计
- redis订阅怎么退出_关于redis,学会这8点就够了
- 电商促销惊喜海报设计模板,会讲故事的素材
- Moment.js在Vue中使用
- Linux防火墙(iptables)的开启与关闭
- Spring框架中的核心思想包括什么
- Oracle Telnet 1521 失败
- 番茄助手在VS2017中的设置
- Linux发行版简介
- 一款适用甲方企业的外网资产周期性扫描监控系统
- 国外最好用的WordPress主机推荐
- 使用Moses脚本进行数据预处理
- 遇见狂神说HTML笔记1
- 质量管理的五大问题和对策|优思学院
- .Net asp.net MVC 实现短信验证
热门文章
- html功能性链接邮箱,HTML格式自定义OpenCart邮件模板功能插件
- 使用jnative调用c语言动态库对接华视电子身份证阅读机
- C++ 保留一位小数
- mysql 数据库军规_MySQL 数据库开发的33 条军规-阿里云开发者社区
- Mysql军规(编写规范)
- java中的类和对象(重点)超详细
- 登录医疗机构无法连接到远程服务器,敬业签桌面便签软件登录提示“无法连接到远程服务器”解决办法...
- 带负荷测试要求二次最小电流_继电保护二次核相、带负荷试验方法
- 明华澳汉读卡器安装插件,便捷读身份证,就诊卡医保卡
- Navicat for MySql不需要注册机破解版