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

 更新时间:2017年03月08日 09:47:06   作者:sunzn  
为了防止冲突,修改包名是最直接的途径。下面这篇文章主要介绍了关于Android中修改jar文件包名的方法,文中介绍的非常详细,需要的朋友可以参考借鉴,下面来一起看看吧。

前言

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如何在原生App中嵌入Flutter

    Android如何在原生App中嵌入Flutter

    这篇文章主要介绍了Android如何在原生App中嵌入Flutter,帮助大家更好的理解和学习Android开发,感兴趣的朋友可以了解下
    2021-03-03
  • Android通过Socket与服务器之间进行通信的示例

    Android通过Socket与服务器之间进行通信的示例

    这篇文章主要介绍了Android通过Socket与服务器之间进行通信的示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • Android Kotlin 实现底部弹框日历组件的案例

    Android Kotlin 实现底部弹框日历组件的案例

    这篇文章主要介绍了Android Kotlin 实现底部弹框日历组件的案例,本文通过实例代码给大家介绍的非常详细,对大家大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2024-08-08
  • Android UI之ImageView实现图片旋转和缩放

    Android UI之ImageView实现图片旋转和缩放

    这篇文章主要介绍了Android UI之ImageView实现图片旋转和缩放的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2015-09-09
  • Android 蓝牙自动匹配PIN码跳过用户交互示例

    Android 蓝牙自动匹配PIN码跳过用户交互示例

    本篇文章主要介绍了Android 蓝牙自动匹配PIN码跳过用户交互示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-06-06
  • Windows下搭建Android开发环境

    Windows下搭建Android开发环境

    这篇文章主要介绍了Windows下搭建Android开发环境,需要的朋友可以参考下
    2015-09-09
  • Android中通过Notification&NotificationManager实现消息通知

    Android中通过Notification&NotificationManager实现消息通知

    关于通知Notification相信大家都不陌生了,平时上QQ的时候有消息来了或者有收到了短信,手机顶部就会显示有新消息什么的,就类似这种。今天就稍微记录下几种Notification的用法。3.0以前的通知和3.0以后的通知是有些区别的。
    2015-10-10
  • Flutter下Android Studio配置gradle的方法

    Flutter下Android Studio配置gradle的方法

    这篇文章主要介绍了Flutter下Android Studio配置gradle的方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • Android手机获取IP地址的两种方法

    Android手机获取IP地址的两种方法

    这篇文章主要介绍了Android手机获取IP地址的两种方法,本文分别讲解了WIFI和GPRS两种情况下各自获取手机IP地址的方法,需要的朋友可以参考下
    2015-05-05
  • Android Service自启动注意事项分析

    Android Service自启动注意事项分析

    这篇文章主要介绍了Android Service自启动注意事项,结合实例分析了Android Service自启动过程中属性设置的相关技巧,需要的朋友可以参考下
    2016-03-03

最新评论