1.解压aar:aar改为zip解压,找到classes.jar
2.打开jar:unzip classes.jar -d tempFolderClassed
3.修改:找到要修改的文件,在as中创建该文件目录,创建该文件复制过来修改,然后在build目录找到这个class文件,放回原处
4.恢复:”jar cvf classes.jar -C tempFolderClassed/ .“生成jar,然后放回原处,然后jar cvf xxx.aar -C [解压的aar目录]/ .
其他知识:
用法:jar {ctxui}[vfm0Me] [jar 档案] [清单档案] [进入点] [-C 目录] 档案 ...
选项:
-c 建立新的归档
-t 列出归档的目录
-x 从归档中撷取已命名的 (或所有) 档案
-u 更新现有归档
-v 在标准输出中产生详细输出
-f 指定归档档案名称
-m 包含指定清单档案中的清单资讯
-e 为独立应用程式指定应用程式进入点
已随附於可执行 jar 档案中
-0 仅储存;不使用 ZIP 压缩方式
-M 不为项目建立清单档案
-i 为指定的 jar 档案产生索引资讯
-C 变更至指定目录并包含後面所列的档案
如果有任何档案是目录,则会对其进行递回处理。
清单档案名称、归档档案名称和进入点名称
的指定顺序与指定 'm' 旗标、'f' 旗标和 'e' 旗标的顺序相同。
范例 1:将两个类别档案归档至名为 classes.jar 的归档中:
jar cvf classes.jar Foo.class Bar.class
范例 2:使用现有清单档案 'mymanifest' 并将
foo/ 目录中的所有档案归档至 'classes.jar' 中:
jar cvfm classes.jar mymanifest -C foo/ .
网友评论