美文网首页Android技术知识Android开发Android开发经验谈
这应该是最全的Jenkins Android自动打包构建教程

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

作者: Bear_android | 来源:发表于2018-08-08 10:22 被阅读39次

    环境搭建

    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说明则证明配置成功

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

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

    • 进入jenkin首页,如下图,点击系系统管理。
    Jenkins首页.png

    找到全局工具配置

    全局工具.png
    1. 配置JDK
    JDK配置.png
    1. git配置
    git配置.png
    1. gradle配置
    git配置.png

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

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

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


    系统设置.png

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


    2ECB85DBB34566AF3893ABED04C26365.png

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

    新建无参数任务

    1. 新建任务


      新建任务.png
    2. 添加描述,点击高级设置配置工作区


      配置工作区.png
    3. 配置代码git仓库

    配置代码git仓库.png
    1. 配置构建


      开始构建.png

    配置GradleWrapper

    构建选择gradle配置wrap路径执行命令.png

    配置root build script 路径

    配置build的路径.png
    1. 点击保存应用。
    2. 点击立即构建,就可以完成自动打包的任务。

    新建带参数任务

    1. 和无参任务一样先创建一个自由风格的构建项目
    2. 选择参数化构建过程
    参数化构建.png
    1. 构建参数,与build.gradle中获取的方式。
    参数配置.png

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

    Jenkins使用参数.png

    在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"
    
    1. 其它过程同无参数任务一致,在执行Gradle脚本时需要将参数带到命令中。
    clean
    assembleRelease -PJAR_VERSION_NAME=${JAR_VERSION_NAME} }
    

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

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

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

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

    其它

    Jenkins工具包下载:
    点击下载

    提取密码: 3zr5

    相关文章

      网友评论

        本文标题:这应该是最全的Jenkins Android自动打包构建教程

        本文链接:https://www.haomeiwen.com/subject/dfstbftx.html