您的位置:首页 > 游戏 > 游戏 > 网站联盟平台_企业名录搜索软件app_百度提交入口的注意事项_上海网站seo公司

网站联盟平台_企业名录搜索软件app_百度提交入口的注意事项_上海网站seo公司

2024/10/5 17:20:04 来源:https://blog.csdn.net/nonagontech/article/details/142531322  浏览:    关键词:网站联盟平台_企业名录搜索软件app_百度提交入口的注意事项_上海网站seo公司
网站联盟平台_企业名录搜索软件app_百度提交入口的注意事项_上海网站seo公司

  1. 虽然.jar文件是一种Java归档文件,可以使用压缩软件打开,但是并不能通过压缩软件来修改其内容,只能通过jar命令来更新文件。

一、背景

在使用血氧仪SDK时出现了问题,经过分析是在申请权限时版本不兼容导致的闪退异常,基于此我们对SDK中的一个工具类进行了代码调整并替换。

二、操作步骤

1. 获取有问题的jar包文件

将有问题的jar包下载到本地,比如叫:EoxSDK-v1.0.1.jar

2. 使用IDEA自带的反编译插件(Jadx Class Decompiler)

将jar包反编译得到类文件,然后创建一个java文件将文件内容复制进去

注意:java文件所在的包名要和你要修改的类所在的包名一致,才能完成替换。

3. 修改有问题的部分并编译

对有问题的部分进行代码修正。

修正完成后编译得到一个正确的class文件

4. 替换jar包的class文件

这里将拷贝出的类文件按原目录创建好并放在与EoxSDK-v1.0.1.jar同级。如下图



执行命令替换class文件

jar -uvf com-business-1.0.jar com/business/service/tool/util/IgnoreSSLUtils.class

三、jar命令帮助

参数列表

名称说明
-c创建一个jar包
-t显示jar中的内容列表
-x解压jar包
-u添加文件到jar包中
-f指定jar包的文件名
-v生成详细的报造,并输出至标准设备
-m指定manifest.mf文件
-0产生jar包时不对其中的内容进行压缩处理
-M不产生所有文件的清单文件(Manifest.mf)
-i为指定的jar文件创建索引文件
-C表示转到相应的目录下执行jar命令,相当于cd到那个目录,然后不带-C执行jar命令

1. 查看.class文件具体路径

查看要替换的.class文件在xxx.jar包中所在的具体路径,命令如下:

 jar -tvf archive-manage-service.jar | grep PigeonholeCaseInfoSynHandlerImpl.class

2. 解压指定的class文件

将xxxdemo.jar中指定的.class解压出来,命令如下:

jar -xvf archive-manage-service.jar  BOOT-INF/classes/cn/com/chnsys/handler/impl/PigeonholeCaseInfoSynHandlerImpl.class

3. 替换class文件

将替换后的.class重新打进xxxdemo.jar中,命令如下:

jar -uvf archive-manage-service.jar  BOOT-INF/classes/cn/com/chnsys/handler/impl/PigeonholeCaseInfoSynHandlerImpl.class

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com