Android使用Jenkins自动化打包

一、目的

  1. 了解Jenkins工具
  2. Jenkins在Windows系统下的环境搭建
  3. Jenkins 的Android 构建环境配置
  4. 创建FreeProject Item,配置Android Gradle工程构建环境

二、Jenkins Windows环境搭建

1、jenkins 是什么?

Jenkins格言:Build great things at any scale

Jenkins是一款开源CI&CD软件,提供超过1000个插件用于支持各种自动化任务,包括构建、测试和部署软件。

Jenkins 支持各种运行方式,可通过系统包、Docker 或者通过一个独立的 Java 程序。

注:CI(Continuous Integration的缩写),持续集成。CD(Continuous Delivery),持续交付。CD(Continuous Deployment),持续部署。

基本特征:

  • 持续集成和持续交付:作为一个可扩展的自动化服务器,Jenkins 可以用作简单的 CI 服务器,或者变成任何项目的持续交付中心。

  • 简易安装:Jenkins 是一个基于 Java 的独立程序,可以立即运行,包含 Windows、Mac OS X 和其他类 Unix 操作系统。

  • 配置简单:Jenkins 可以通过其网页界面轻松设置和配置,其中包括即时错误检查和内置帮助。

  • 插件:通过更新中心中的 1000 多个插件,Jenkins 集成了持续集成和持续交付工具链中几乎所有的工具。

  • 扩展:Jenkins 可以通过其插件架构进行扩展,从而为 Jenkins 可以做的事提供几乎无限的可能性。

  • 分布式:Jenkins 可以轻松地在多台机器上分配工作,帮助更快速地跨多个平台推动构建、测试和部署。

    2、要求

    硬件:

    • 256MB内存,建议大于512MB

    • 1GB可用磁盘空间(作为一个Docker容器运行jenkins的话推荐10GB)

      软件:

      • Java 8(JRE或者JDK)

        :如果将Jenkins作为Docker 容器运行,这不是必需的。

        3、下载

        Jenkins 以 WAR 文件、原生包/安装程序和 Docker 镜像分发。

        Jenkins通常作为一个独立的应用程序在其自己的流程中运行, 内置Java servlet 容器/应用程序服务器(Jetty)。Jenkins也可以运行在不同的Java servlet容器((如Apache Tomcat 或 GlassFish))中作为servlet运行

        官网下载:Jenkins 的安装和设置

        官网链接打开,如上图,可根据需要下载各个平台的安装包。这里基于Windows系统,选Windows,下载的是jenkins.msi安装程序。

        4、安装启动

        4.1 war包安装启动

        下载jenkins.war包,按如下步骤操作,

        1. 打开命令行终端进入到下载目录
        2. 运行命令:java -jar jenkins.war --httpPort=8080
        3. 打开浏览器:http://localhost:8080
        4. 按照说明完成安装

        4.2 Jenkins.msi程序安装启动

        下载jenkins.msi安装程序安装,安装完成后,创建自启动服务。

        如上图,在Window服务程序控制面板,可手动调整启动策略。

        也可,通过SC命令工具,启动和停止jenkins服务,如下图:

        注:需以管理员权限开启命令行终端,执行sc 命令。

        如上图,说明安装启动成功。

        4.3 常用操作

        启动:sc start jenkins

        重启:http://localhost:8080/restart

        关闭:http://localhost:8080/exit, sc stop jenkins

        三、Android 构建环境配置

                Java JDK、Gradle插件、Git程序,先在本地准备好。

        1、系统配置

        Manage Jenkins —> Configure System 进入系统配置界面

         

        配置Jenkins Location

        全局属性-环境变量配置

        如下图,构建Andorid应用,需要配置ANDROID_HOME、GRADLE_HOME、JAVA_HOME

         

        2、全局工具配置

        Manage Jenkins -> Global Tool Configuration

        JDK配置

         

          Git工具配置

        Gradle工具配置

         

         3、插件管理

        可查看已安装的插件和搜索需要安装的插件。

        Jenkins插件官方链接:Jenkins Plugins

         

        Manage Jenkins -> Plugin Manager

         

        高级设置可以设置代理、插件安装配置文件和升级站点

         

        四、Android Gradle构建配置及打包

        点击新建Item,创建第一个任务

        输入任务名称,选Freestyle project,点击确认  

        对新建的Item,进行如下构建配置  

         

        一般配置,General-选使用自定义的空间,填写本地目录

         

        源码管理,

        • 无:默认编译自定义空间中的项目代码;

        • Git:拉取指定路径的远程Git服务器代码到本地工作空间

        • Subversion:拉去svn 服务器代码到本地工作空间

           

           

          构建环境,选择Gradle脚本

           

           选择在全局工具中配置好的Gradle

          配置Task ,clean 和assembleDebug 先清理构建缓存然后构建debug Apk,点击保存。  

           

          一个Android Gralde工程的打包配置已完成。

          自定义的空间目录中放入Android Studio 项目代码  

          开始构建,构建任务正在运行

           

          蓝色表示构建成功,可查看构建信息

           工作空间中可查看构建的apk,点击可下载  

          一个Android Studio 同构Jenkins构建已完成。

           

          五、总结

          本次探索完成了Jenkins环境搭建及Android Gradle项目构建配置及打包,可同步本地仓库、Git、SVN远程仓库进行打包。

          Jenkins的插件非常丰富,功能强大。后续继续完善用户管理、Jenkins Pipeline、Blue Ocean的探索。