freeline 拆解(一)

mac2025-02-07  15

freeline 已经停止维护了,具体原因未知。写几篇文章追悼一下吧。

 

简单引用一下freeline的使用过程,详情见freeline github:

git clone git@github.com:alibaba/freeline.git

cd freeline/sample

./gradlew initFreeline

python freeline.py

本文目的:将freeline gralde plugin改造成本地gradle发布,相关构建脚本也改成本地,比如freeline.py;

改造步骤:

1.在freeline-gralde-plugin.gradle,freeline_runtime-no-op/build.gradle,freeline_runtime/build.gradle 增加:

uploadArchives {     repositories {         mavenDeployer {             //提交到远程服务器:             // repository(url: "http://www.xxx.com/repos") {             //    authentication(userName: "admin", password: "admin")             // }             //本地的Maven地址设置为             repository(url: uri('../../TestFreeline'))         }     } }

作为上传到本地的task;

2.修改gradle.properties 版本号:

修改步骤:1.修改FREELINE_ARTIFACT_VERSION版本号;2.执行gradlew.bat uploadArchives 上传plugin到本地;3.修改FREELINE_RELEASE_VERSION版本,正常运行后即可

 

执行完这步,gradle和相关依赖库就发布-执行在本地了。

接下来我们看如何将 ./gradlew initFreeline 下载的freeline-v0.8.8.zip放到本地。因为改项目已经不维护,所以可能下载失败,如果需要可以留言吧。

3.将 freelineLocal=E\:\\apk\\freeline-v0.8.8.zip(换成自己的路径) 添加到gradle.properties 即可

 

简单总结一下:

freeline 采用python做代码扫描和补丁处理,其间调用了aapt,dx.bat等工具做的编译,以上就是改造过程

 

 

 

最新回复(0)