更换jar包包名

https://www.cnblogs.com/yejiurui/p/4283505.html

一、首先下载jarjar.jar工具

地址在:https://code.google.com/p/jarjar/

二、查看包名

java -jar jarjar.jar strings domob_android_sdk.jar

此步骤可以使用rar打开jar文件来看

三、更换包名

java -jar jarjar.jar process <rulesFile> <inJar>  <outJar>

rule文件示例:

rule org.** org2.@1

rule com.fasterxml.** com.fasterxml2.@1

运行示例:

java -jar jarjar-1.4.jar process ./rule.txt open-sdk-java-2.0.2.jar ./open-sdk-java-2.0.3.jar


rule详细:

rulesFile直接用.txt文档写就行,

rulesFile有三種指令,分別如下:

1. rule用來取代Package的名称。

rule pattern result


2.zap用來移除符合名称的Package。

zap pattern

3.keep只会保留符合的Package的名称,其他的則會刪除。如果和zap一起使用,將會在zap执行完之后才執行。

keep pattern

备注: pattern為要比對的字串,可以使用「*」和「**」來表示任意的Package名稱。「*」可以代表一层的Package,「**」可以代表多层的Package。

result為要取代成的字串,可以使用「@1」、「@2」这类的符号表示要使用第几个pattern的「*」或「**」所代表的字串。

如果要将Jar包內的「cn.domob」名称全都替換成「com.google」,可以编写以下的rulesFile:

rule cn.domob.**com.google.@1

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,600评论 19 139
  • /Library/Java/JavaVirtualMachines/jdk-9.jdk/Contents/Home...
    光剑书架上的书阅读 9,405评论 2 8
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 14,486评论 2 59
  • 版权声明:本账号发布文章均来自公众号,承香墨影(cxmyDev),版权归承香墨影所有。未经允许,不得转载。 一、前...
    承香墨影阅读 4,617评论 0 5
  • 福气 / 汪莉 七十年代家里的独生女 童年的我是最快乐的 天天和同学朋友玩耍 在院子里我们用树棍敲打桑椹树,捡桑椹...
    汪莉_4c55阅读 3,452评论 2 6