转发:这应该是最全的Jenkins Android自动打包构建教

2019-08-20  本文已影响0人  冰河世纪_d2d7

环境搭建

  1. JDK下载与配置环境变量
  2. SDK下载与配置环境变量
  3. GIT下载与配置环境变量
  4. Jenkins下载与安装。

本篇着重讲如何配置Jenkins,前三个配置就不一一赘述,详情请百度。

搭建步骤

检查环境变量是否都配置正确。

1.环境变量检查

win运行cmd,输入

java -version

查看是否输出java version,如果输出成功则证明配置JDK正确。

win运行cmd,输入

adb start-server

查看是否成功启动adb server,如果成功则证明SDK配成功

win运行cmd,输入

git

如果出现git usage说明则证明配置成功

2. 解压工具包,按照向导安装Jenkins。安装向导推荐的插件。插件安装完在已安装的列表中查看是否已经安装了Android Lint Plugin,Gradle Plugin,
Git plugin插件。

3. 配置Jenkins的全局工具配置

image

找到全局工具配置

image

4. 配置JDK

image

5. git配置

image

6. gradle配置

image

注意:此处配置的gradle版本必须与所构建的项目一致。另外路径不能过长,否则后面编译会导致AAPT的错误(建议将对应版本gradle移动到某个盘的根目录中,或者直接使用项目自带的gradle在编译时进行下载)。

7. 配置全局的SDK路径如下图

左边找到系统管理,然后点击下图所示的系统设置

image

找到环境变量配置,添加Android Sdk的配置,==路径需要改为自己的SDK路径==

image

环境变量到这里就配置完毕了。

新建无参数任务

1. 新建任务

image

2. 添加描述,点击高级设置配置工作区

image

3. 配置代码git仓库

image

4. 配置构建

image

配置GradleWrapper

image

配置root build script 路径

image

5. 点击保存应用。
6. 点击立即构建,就可以完成自动打包的任务。

新建带参数任务

1. 和无参任务一样先创建一个自由风格的构建项目
2. 选择参数化构建过程

image

3. 构建参数,与build.gradle中获取的方式。

image

如上图,以选项参数以及文本参数为例。在Jenkins中定义的参数可以使用"${parameterName}",例如Jenkins选择分支时就可以使用此参数:

image

在Andrid项目中如何获取对应的参数呢?因为Jenkins打包时会把参数侵入到项目中,在app包名下的build.gradle中可以这样获取上述的JAR_VERSION_NAME:

def defaultName = "2.04.11"
def jarVersionName = project.hasProperty('JAR_VERSION_NAME') ? JAR_VERSION_NAME : defaultName

注意:boolean参数使用选项参数来代替,在gradle3.3版本中运行时此参数会获取不准确。

def needNewsSdk = project.hasProperty('NEED_NEWS_SDK') ? NEED_NEWS_SDK : "false"
boolean isNeedNewsSdk = needNewsSdk == "true"

4. 其它过程同无参数任务一致,在执行Gradle脚本时需要将参数带到命令中。

clean
assembleRelease -PJAR_VERSION_NAME=${JAR_VERSION_NAME} }

注意:参数名使用-P来开头,P为大写

构建完后构建其它项目,且带有参数。

  1. 需要安装插件Parameterized Trigger plugin,在系统管理-插件管理-可安装选项里面检索此插件安装并重启Jenkins(重启方法在Jenkins后面地址后面加上/restart
  2. 在构建或者构建后操作选项里面(因Jenkins版本不同,此插件的位置也不同)找到:
image

填入要构建的下个项目名,并添加参数,可以选择当前任务的参数如上图。

上一篇下一篇

猜你喜欢

热点阅读