Android修改jar文件包名的方法分享

发布时间 - 2026-01-11 00:03:31    点击率:

前言

jar 包我们会非常高频率的使用,尤其是用一些其他三方库的时候,往往把 java 代码打包成 jar 文件,方便项目依赖使用。

带来的问题是, 多个jar包容易出现包名冲突.   

这时候我们修改 jar 文件的包名是一个比较快速有效的解决办法。 

举两个例子,是笔者亲身经历的两个情况。

  1. Gson库:这个相信很多人都在使用,但是直接导入 gson 的 jar 包,在 HTC Desire HD 这款手机上会抛出异常(TypeNotFoundException)
  2. Jackson库:这也是个 json 解析的,我们在做苹果推送后台的时候,后台用 java 写的,使用 java-apns 库,依赖于 Jackson,然后运行就会抛出异常,具体原因没有查,初步怀疑包名冲突,修改之后就解决的。

下面介绍如何修改jar文件的包名,需要用到一个小工具,叫做 jarjar.jar

jarjar.jar下载

下载地址:http://code.google.com/p/jarjar/downloads/list

这里我们以 gson.jar 为例,在 gson.jar 包目录下新建一个文本文件,名字随意,例如 rule.txt,写入下面的内容。

rule com.google.gson.** com.google.mygson.@1 

上面写的就是修改规则,我们将包名中的 gson 修改为 mygson。打开命令行,输入如下命令。

java -jar jarjar.jar process rule.txt gson.jar mygson.jar 

命令执行完毕,同目录下会多出一下 mygson.jar,这个就是修改包名之后的 jar 文件,我们项目导入这个 jar 包使用即可。

总结

以上就是这篇文章的全部内容了,希望本文的内容对各位Android开发者们能带来一定的帮助,如果有疑问大家可以留言交流,谢谢大家对的支持。


# 修改  # android.jar  # android  # jar包  # jar包混淆  # Android批量修改文件格式/文件名的神操作分享  # 抛出  # 是一个  # 就会  # 是个  # 目录下  # 都在  # 尤其是  # 多个  # 下载地址  # 很多人  # 这款  # 这也  # 问题是  # 为例  # 这篇文章  # 谢谢大家  # 多出  # 解决办法  # 命令行  # 三方 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在IIS中新建站点并配置端口与IP地址?  胶州企业网站制作公司,青岛石头网络科技有限公司怎么样?  Laravel怎么判断请求类型_Laravel Request isMethod用法  html5源代码发行怎么设置权限_访问权限控制方法与实践【指南】  昵图网官方站入口 昵图网素材图库官网入口  如何用西部建站助手快速创建专业网站?  IOS倒计时设置UIButton标题title的抖动问题  米侠浏览器网页背景异常怎么办 米侠显示修复  iOS UIView常见属性方法小结  如何在自有机房高效搭建专业网站?  Laravel怎么自定义错误页面_Laravel修改404和500页面模板  如何用wdcp快速搭建高效网站?  手机网站制作与建设方案,手机网站如何建设?  Laravel如何从数据库删除数据_Laravel destroy和delete方法区别  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  Laravel如何实现邮箱地址验证功能_Laravel邮件验证流程与配置  Claude怎样写结构化提示词_Claude结构化提示词写法【教程】  Laravel如何使用软删除(Soft Deletes)功能_Eloquent软删除与数据恢复方法  googleplay官方入口在哪里_Google Play官方商店快速入口指南  如何做网站制作流程,*游戏网站怎么搭建?  详解阿里云nginx服务器多站点的配置  详解Nginx + Tomcat 反向代理 如何在高效的在一台服务器部署多个站点  Laravel Session怎么存储_Laravel Session驱动配置详解  中山网站推广排名,中山信息港登录入口?  Laravel如何处理JSON字段_Eloquent原生JSON字段类型操作教程  Windows Hello人脸识别突然无法使用  实例解析angularjs的filter过滤器  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  如何在万网开始建站?分步指南解析  Laravel怎么写单元测试_PHPUnit在Laravel项目中的基础测试入门  Laravel Octane如何提升性能_使用Laravel Octane加速你的应用  高防服务器:AI智能防御DDoS攻击与数据安全保障  Laravel Telescope怎么调试_使用Laravel Telescope进行应用监控与调试  Laravel怎么生成二维码图片_Laravel集成Simple-QrCode扩展包与参数设置【实战】  Laravel模型关联查询教程_Laravel Eloquent一对多关联写法  Laravel如何使用Blade模板引擎?(完整语法和示例)  Laravel如何实现用户密码重置功能?(完整流程代码)  Laravel如何使用Laravel Vite编译前端_Laravel10以上版本前端静态资源管理【教程】  Laravel Blade组件怎么用_Laravel可复用视图组件的创建与使用  网站图片在线制作软件,怎么在图片上做链接?  如何用JavaScript实现文本编辑器_光标和选区怎么处理  如何有效防御Web建站篡改攻击?  使用Dockerfile构建java web环境  微信小程序 闭包写法详细介绍  Laravel如何自定义分页视图?(Pagination示例)  iOS中将个别页面强制横屏其他页面竖屏  Android 常见的图片加载框架详细介绍  javascript中的try catch异常捕获机制用法分析  如何在万网利用已有域名快速建站?  哪家制作企业网站好,开办像阿里巴巴那样的网络公司和网站要怎么做?