最近项目需要一个工程打完aar包后,放到另一个工程中依赖使用,每次手动处理很是烦人,研究了一下gradle的构建流程后,用了gradle的生命周期中afterEvaluate周期中处理。
afterEvaluate:是一般比较常见的一个配置参数的回调方式,只要 project 配置成功均会调用,不论是在父模块还是子模块。
afterEvaluate {
assembleRelease.doLast {
println("===================== do assembleRelease last start =========================")
delete fileTree("../../Se******Service/servicelibrary/allAssets/dev/"){//删除依赖目录中的原有aar
include("*.aar")
}
println("===================== do assembleRelease delete finish =========================")
copy {
from "./build/outputs/apk/dev/release/"
into "../../Se******Service/servicelibrary/allAssets/dev/"
include "*.aar"
}
println("===================== do assembleRelease last end =========================")
}
}
2个工程在同一个git目录下
步骤一:
删除指定项目Se-Service中的旧aar
步骤二:
复制新生成的Se-SDK中的aar到指定目录中。
这个gradle方法写在 Se-SDK的gradle中,在执行工程中 assembleRelease 打包时,就会自动处理。节省手动删除,复制的时间。