java jar apktool,gradle 构建apktool.jar
apktool由gradle编译构建,但在apktool源码根目录运行gradle build, 没有生成apktool.jar,
basmali.jar, smali.jar 倒是生成了,后看apktool.jar的入口在brut.apktool/apktool-cli目录下
看gradle脚本:
16 apply plugin: ‘eu.appsatori.fatjar‘
17
18 configurations {
19 proguard
20 }
21
22 dependencies {
23 compile project(‘:brut.apktool:apktool-lib‘)
24 proguard depends.proguard
25 }
26
27 gradle.taskGraph.whenReady {
28 fatJar {
29 manifest {
30 attributes("Main-Class": "brut.apktool.Main")
31 }
32 }
33 }
34
35 task cleanOutputDirectory(type: Delete) {
36 delete fileTree(dir: jar.destinationDir.getPath(), exclude: "apktool-cli.jar")
37 }
38
39 task proguard(type: JavaExec, dependsOn: fatJar) {
40 def outFile = jar.destinationDir.getPath() + ‘/‘ + "apktool" + ‘-‘ + project.apktool_version + ‘-small‘ + ‘.‘ + jar.extension
41 inputs.file jar.archivePath
42 outputs.file outFile
43
44 println "${jar.archivePath}"
45 println "${outFile}"
46 classpath = configurations.proguard
47 main = ‘proguard.ProGuard‘
48 args ‘-injars ‘ + "${jar.archivePath}" + ‘ (!META-INF/LICENSE.txt,!META-INF/NOTICE.txt,!README)‘
49 args "-outjars ${outFile}"
50 args "-libraryjars ${System.properties[‘java.home‘]}/lib/rt.jar"
51 args ‘-dontobfuscate
52 args ‘-dontoptimize‘
53 args ‘-keep public class brut.apktool.Main { public static void main(java.lang.String[]); }‘
54 args ‘-keep class org.yaml.snakeyaml.** { public protected private *; }‘
55 args ‘-keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); }‘
56 args ‘-dontwarn com.google.common.base.**‘
57 args ‘-dontwarn com.google.common.collect.**‘
58 args ‘-dontwarn com.google.common.util.**‘
59 args ‘-dontwarn javax.xml.xpath.**‘
60 args ‘-dontnote **‘
61 }
62
63 proguard.dependsOn cleanOutputDirectory
64 tasks.getByPath(‘:release‘).dependsOn(proguard)
task生成相应的jar, 怀疑这个task没有默认执行
敲gradle proguard
果然生成的我们需要的东西。
apktool-2.0.0-dirty-small.jar
原文:http://blog.csdn.net/oman111/article/details/41866695
java jar apktool,gradle 构建apktool.jar相关推荐
- Java Maven和Gradle构建的主题缓存
Concourse CI 3.3.x引入了在任务运行之间缓存路径的功能. 此功能有助于加快将内容缓存在特定文件夹中的任务-在这里,我将演示如何使用此功能来加快基于Maven和Gradle的Java构建 ...
- gradle java ide_使用Gradle构建Java项目
使用Gradle构建Java项目 这个手册将通过一个简单的Java项目向大家介绍如何使用Gradle构建Java项目. 我们将要做什么? 我们将在这篇文档航中创建一个简单的Java项目,然后使用Gra ...
- 06、使用Gradle构建的项目如何打jar包和war包
打jar包 打开gradle之前构建的项目,随便写一个测试类里面打印一句话. 打开idea中gradle的窗口,选择build下的jar双击执行 执行完控制台显示成功,在当前项目的目录下会有生成一个b ...
- 【AOP 面向切面编程】Android Studio 中配置 AspectJ ( 下载并配置AS中 jar 包 | 配置 Gradle 和 Gradle 插件版本 | 配置 Gradle 构建脚本 )
文章目录 一.AspectJ 下载 二.拷贝 aspectjrt.jar 到 Android Studio 三.配置 Gradle 和 Gradle 插件版本 四.配置 Gradle 构建脚本 一.A ...
- 在k8s中使用gradle构建java web项目镜像Dockerfile
在k8s中使用gradle构建java web项目镜像Dockerfile FROM gradle:6-jdk8 AS build COPY --chown=gradle:gradle . /home ...
- gradle 上传jar包_gradle 打包jar上传到nexus 同时上传源码jar
以我们实际项目为例,项目中后台和前台单独开发,之间通过dubbo接口调用,后台提供服务接口,具体实现对前台隐藏,前台使用某个服务时,下载相应依赖然后调用,因此需要将服务接口打成jar包,上传到仓库中, ...
- Java技术:项目构建工具Maven最佳替代者gradle介绍
Maven作为一款非常流行的项目构建工具.基本上是每个Java程序员必备的工具,当然Maven有一些地方不足之处: 1. Maven的配置文件是XML格式的,如果你的项目工程依赖的包很多,那么XML文 ...
- java gradle构建_在Gradle中为JPMS构建Java 6-8库
java gradle构建 通过提供Java 9 module-info.class了解如何使用Gradle构建支持JPMS( Java平台模块系统 )的Java 6-8库. 介绍 如果您需要JPMS ...
- gradle 上传jar包_Gradle学习记录014 关于依赖的声明
详细学习Gradle构建的依赖声明.该学习记录基于Gradle官方网站资料.本篇参考链接如下: https://docs.gradle.org/current/userguide/declaring_ ...
- Java总结:SpringBoot的使用cmd命令进行Gradle构建
QUESTION:SpringBoot的使用cmd命令进行Gradle构建 ANWSER: 目录 QUESTION:SpringBoot的使用cmd命令进行Gradle构建 ANWSER: 一:下载S ...
最新文章
- SQLServer2000同步复制技术实现步骤
- 定制属于自己的域名邮箱
- 中国医科大学计算机应用基础本科在线作业,中国医科大学《计算机应用基础(本科)》在线作业.doc...
- java--HashMap与Hashtable的区别
- Flutter开发之环境搭建
- 汤阳光 Hibernate笔记
- linux 下串口转usb不能发送数据包,红帽redhat下 串口转USB问题 linux
- UVA152 Tree's a Crowd【暴力+最值】
- ASP.NET Core MVC 源码学习:详解 Action 的激活
- 一、图解Java中String不可变性
- LeetCode 55 - 跳跃游戏
- VAR(向量自回归)模型
- Android性能专项FPS测试实践
- 有关照度和亮度的单位
- 中国大学MOOC所有课程信息爬虫(课程ID、学校简称、课程名字、教师、学校全称、学生人数、学生人数、评价人数、平均评价)
- 12生肖年份c语言,12生肖在什么年份最好运
- unpivot行转列 oracle,oracle-行转列点评oracle11g sql新功能pivot/unpivot
- 阿里云Linux服务器如何安装ClamAV杀毒软件-最全详细教程
- 学习率衰减之余弦退火(CosineAnnealing)
- DOS之bat启动Exe脚本