为接入jetpack compose,项目android gradle plugin版本需要升级,对应的gradle版本也需要从5.6.4升级到7.0.2,同时jdk环境也需要从jdk8升级到jdk11。
一般编译脚本直接调用gradlew即可,不用关心具体的gradle版本,但是我们的编译环境不允许连接外网,所有依赖都是走公司私服代理下载。之前为了方便处理,jenkins编译流程中直接使用的gradle script,并且指定使用本地固定版本的gradle。
此次变更要求现有分支代码使用jdk8 + gradle5.6.4编译,新分支代码使用jdk11+gradle7.0.2编译,为方便处理,直接使用shell script执行编译
#!/bin/bash
# 解析当前代码使用的gradle版本
source ./gradle/wrapper/gradle-wrapper.properties
IFS="-" read -r -a array <<< "$distributionUrl"
gradle_version=${array[1]}
echo 'gradle version:' $gradle_version
gradle_cmd="/data/gradle-5.6.4/bin/gradle"
case $gradle_version in
7.0.2 )
# gradle7.0.2则要使用jdk11运行
export JAVA_HOME=/usr/local/jdk-11.0.12/
gradle_cmd="/data/gradle-7.0.2/bin/gradle"
;;
5.6.2 )
;;
esac
echo $gradle_cmd --no-deamon clean assemble${buildType}
exec ${gradle_cmd} --no-deamon clean assemble${buildType}