需要安装软件(jenkins所在服务器):

  gradle、SDK

一、gradle安装(服务器部署的gradle版本需要等于或高于开发环境的gradle版本)

  1、下载地址:http://services.gradle.org/distributions   (gradle-2.14.1-all.zip)

  2、上传到linux并解压: unzip gradle-2.14.1-all.zip

  3、配置环境变量:

export GRADLE_HOME=/home/cfjekins/gradle/gradle-2.14.1  (gradle解压后的目录)
export PATH=$PATH:$GRADLE_HOME/bin

  4、source命令使配置生效:source .bash_profile (source 文件名)
  5、检验配置是否生效:echo $GRADLE_HOME
            /home/cfjekins/gradle/gradle-2.14.1

二、SDK安装(服务器SDK版本需要跟开发环境SDK版本一致)

  1、下载地址:http://tools.android-studio.org/index.php/sdk/  (android-sdk_r24.4.1-linux.tgz)

  2、上传到linux并解压:tar zxvf android-sdk_r24.4.1-linux.tgz

    (解压后的目录没有build-tools、platforms、platform-tools目录,需要更新)

  3、配置环境变量:  

export ANDROID_HOME=/home/cfjekins/android_SDK/android-sdk-linux  (SDK解压后的目录)
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$PATH

使配置生效:source .bash_profile (source 文件名)
检验配置是否生效:echo $ANDROID_HOME

4、更新build-tools、platforms、platform-tools

 使用镜像服务器地址更新,地址如下:

大连东软信息学院镜像服务器地址:http://mirrors.neusoft.edu.cn 端口:80

北京化工大学镜像服务器地址:IPv4: http://ubuntu.buct.edu.cn/ 端口:80、IPv4: http://ubuntu.buct.cn/ 端口:80、IPv6: http://ubuntu.buct6.edu.cn/ 端口:80

上海GDG镜像服务器地址:http://sdk.gdgshanghai.com 端口:8000

 1>进入SDK解压目录下的tools目录:cd /home/cfjekins/android_SDK/android-sdk-linux/tools

2>查看镜像列表,tools目录执行命令: ./android list sdk --proxy-host sdk.gdgshanghai.com --proxy-port 8000 -s

  打出可更新列表:

  

3>更新,tools目录下执行命令:./android update sdk --proxy-host sdk.gdgshanghai.com --proxy-port 8000 -s -u -t platform  (-t 后的参数为更新程序名)

  platform、platform-tools、build-tools更新完后,解压目录下就能看到platform、platform-tools、build-tools目录,更新后SDK目录如下:

     

  build-tools目录:(23.0.1的版本是更新的版本,其他版本是从android studio下载下来放进去的,因为linux从镜像服务器上更新的是镜像服务器上最新的版本,最新的版本或其他版本需要自己下载扔进去就好了)

  

  paltforms目录:(android-23/24版本也是从android studio下载下来放进去的,这里SDK最高的版本需要与开发环境SDK版本一致,我们最高的版本是android-24,而镜像地址更新的最高版本是android-22,所以需要下载android-24放进去)

  

  paltform-tools目录:

    到这里SDK安装完全。

三、安装gradle plugin

  jenkins-->系统管理-->管理插件-->选择"gradle plugin"下载并安装

四、配置gradle

  系统管理-->Globl Tool Configuration,配置如下图:

  

五、新建JOB及配置

  Jenkins->新建->构建一个自由风格的软件项目

  1、General配置

     

  2、源码管理

  repository UR:git的项目URL(linux上只能通过 SSH方式登录)

  credentials:jenkins登录git的凭证,linux环境只能设置SSH方式(通过add设置,详细设置查看jenkins SSH登录 Git配置(通过eclipse生成SSH 密钥)

  

  3、构建触发器

这里设的是每天凌晨2点运行JOB

  4、构建--Invoke Gradle script

    1>系统设置-->Global Tool Configuration配置Gradle版本(我在这里设置了两个版本)

      name:所配置gradle的名字,随便填

      GRADLE_HOME:服务器上gradle的解压目录

  

     2>job里的gradle配置

    Gradle Version:这里选择上一步配置好的gradle版本

    Tasks :构建任务(--debug:为构建日志输出格式)

  5、配置邮件发送

    设置收件邮箱之前,先在"系统管理-->系统设置-->邮件通知"做发送邮箱设置。 

    Recipients:收件人邮箱

jenkins git gradle android自动化构建配置的更多相关文章

  1. android--jenkins+gradle+android自动化构建apk步骤(转)

    第一步,安装jenkins,这个网上教程挺多的. 第二步,下载并配置gradle.下载地址http://www.gradle.org/ 解压gradle至某路径下,如/usr/local/lib/gr ...

  2. Jenkins+Git+Maven搭建自动化构建平台

    http://blog.csdn.net/xlgen157387/article/details/50353317

  3. [android自动化构建]之centos安装gradle

    这是android自动化构建系列之环境配置 这里只记录部分gradle相关的配置 下载并解压 下载地址参考这里:https://services.gradle.org/distributions/,未 ...

  4. Linux下Jenkins+git+gradle持续集成环境搭建

    Linux下Jenkins+git+gradle持续集成环境搭建 来源:IT165收集  发布日期:2014-08-22 21:45:50 我来说两句(0)收藏本文   一.项目介绍 和 linux ...

  5. jenkins+git+maven搭建自动化部署项目环境

    简介    折腾了两个晚上,趁着今晚比较有空,把jenkins+git+maven搭建自动化部署项目环境搭建的过程记录一下,这里我把github作为git的远程仓库(https://github.co ...

  6. 使用Jenkins + git submodule 实现自动化编译,解决代码安全性问题

    道哥的第 030 篇原创 目录 一.一个真实的代码泄漏故事 二.Jenkins 的基本使用 1. Jenkins 是什么? 2. 安装 JDK8 3. 安装 Jenkins 4. 在浏览器中配置 Je ...

  7. 使用Jenkins配置Git+Maven的自动化构建

    Jenkins是一个开源的持续集成工具,应用Jenkins搭建持续集成环境,可以进行自动构建.自动编译和部署,非常方便. 在服务器比较少的情况下,Jenkins的优势并不明显,但是随着项目发展,服务器 ...

  8. Jenkins自动化构建配置

    写在前头 我每次修改代码一点东西,都要进行一个重新发布.重新发布的流程大概如下: 将最新代码同步上传到git上面 Maven打包 mvn clean install 将最新的jar包上传到服务器上面, ...

  9. 基于Jenkins+Git+Gradle的Android持续集成

    本文参考了: http://my.oschina.net/uboluo/blog/157483 http://java.dzone.com/articles/automating-continuous ...

随机推荐

  1. 什么是Spring Cloud

    Spring Cloud是一系列框架的有序集合.它利用Spring Boot的开发便利性巧妙地简化了分布式系统基础设施的开发,如服务发现注册.配置中心.消息总线.负载均衡.断路器.数据监控等,都可以用 ...

  2. 通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术

    通过策略接口,Spring 框架是高度可配置的,而且包含多种视图技术,例如 JavaServer Pages( JSP)技术.Velocity.Tiles.iText 和 POI.Spring MVC ...

  3. csdn 模式识别

    http://blog.csdn.net/liyuefeilong/article/details/45217335 模式识别 http://ceit.ucas.ac.cn/index.php?id= ...

  4. MongoDB基本用法

    MongoDB基本用法(增删改高级查询.mapreduce) 分享一下我经常用到的自己写的mongo用法示例 该示例基于当前最新的mongo驱动,版本为mongo-2.10.1.jar,用junit写 ...

  5. MySQL Error: PROCEDURE xmdk.query_all_plan can't return a result set in the given context

    C++调用存储过程失败!出现如下错误:MySQL Error: PROCEDURE xmdk.query_all_plan can't return a result set in the given ...

  6. ASP.NET MVC 随想录

    http://www.cnblogs.com/OceanEyes/category/696137.html

  7. Java千百问_05面向对象(011)_引用传递和值传递有什么差别

    点击进入_很多其它_Java千百问 1.什么是值传递 值传递,是将内存空间中某个存储单元中存放的值,传送给还有一个存储单元.(java中的存储单元并不是物理内存的地址,但具有相关性) 比如: //定义 ...

  8. 复习及总结--.Net线程篇(4)

    这里要说的就是多线程的锁的问题了 锁:作用在于实现线程间的同步问题,最典型的是售票问题 1,InterLocked 提供的都是静态方法,用来同步对多个共享变量的访问,包括以原子方式递增,递减,比较和替 ...

  9. IOS 开发之 -- 过滤掉字符串里面所有的非法字符 字典和json之间的互转

    比如一个字符串: NSString * hmutStr = @"(010)*(123)E6(234)**150-1111-^^-1234#" 很多时候,数据之间的传输,我们仅仅只想 ...

  10. $("#btn").click(function(){ });只有在页面加载的时候才会有效触发

    例: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title& ...