第一步,安装jenkins,这个网上教程挺多的。

第二步,下载并配置gradle。下载地址http://www.gradle.org/

解压gradle至某路径下,如/usr/local/lib/gradle-1.12

配置环境变量:

$ vi /etc/profile

在该文件底部加上

# gradle

export GRADLE_HOME=/usr/local/lib/gradle-1.12 (刚解压的路径)
export PATH=$PATH:$GRADLE_HOME/bin

:wq!后

$ source source profile

$ echo $GRADLE_HOME

检查是否配置成功。

第三步,在jenkins中配置gradle。

Jenkins-》系统管理-》管理插件-》选择"gradle plugin"下载并安装,网络不好的话也可自行下载插件安装。

下载成功后,系统管理-》系统设置-》gradle安装-》配置一下gradle_home并保存,如下图。

第四步,下载android SDK,并配置ANDROID_HOME

同样在/etc/profile底部加上

#android
export ANDROID_HOME=/opt/adt-bundle-linux-x86_64-20140702/sdk
export PATH=$ANDROID_HOME/tools:$ANDROID_HOME/platform-tools:$PATH

并source使生效。

第五步,Jenkins新建project任务

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

源码管理:选择具体的版本控制软件,并填写项目URL,如本人为svn,只需在Repository URL填具体项目svn地址,其它为默认。

Build periodically H 9 * * 1-6代表每周一至周六上午九点中的某一时间自动build一次。点击每一项后面的问号有详细说明可根据需求自行设置。

选择刚刚系统设置中的gradle版本,clean build代表每次都clean了再build。可自行配置命令行

构建后可能需要发邮件或者获得apk下载,如下,选择Archive the artifacts并填写apk路径。

选择该project job-》左边“状态”-》最后一次成功的构建结果,并点击下载apk。

 

最后列举一下我构建中出现的问题,供参考:

1、local.properties中sdk.dir需设置成ANDROID_HOME路径

2、build.gradle的compileSdkVersion、buildToolsVersion需与ANDROID_HOME中的SDK一致

3、/opt/adt-bundle-linux-x86_64-20140702/sdk/extras/android路径下可能缺少m2repository包,需要补全,否则可能无法识别出external-library里的support-v4/v7包并依赖,原因不详。

4、我是在google develper android官网下载的64位,linux版本为64位,结果报aapt: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory,原因是64为OS需运行32为应用程序缺少链接库所致,$ yum install glibc.i686下载库即可。不知道为啥官网上下下来的都会这样。

5、build.gradle脚本中可能需要加上lintOptions选项。

android{

lintOptions {
abortOnError false
}

}

http://www.2cto.com/os/201410/343255.html

android--jenkins+gradle+android自动化构建apk步骤(转)的更多相关文章

  1. JMeter接口测试系列:Jmeter+jenkins+ant 的自动化构建

    在JMeter接口测试不断深入的过程中,发现可以和jenkins和ant一起搭配进行自动化的构建.下面是jmeter自动化构建的整理笔记. 准备环境 需要本机上确定安装了jmeter.ant和jenk ...

  2. Jenkins敏捷开发 自动化构建工具

    一.序言 Jenkins 是一款自动化构建工具,能够基于 Maven 构建后端 Java 项目,也能够基于 nodejs 构建前端 vue 项目,并且有可视化 web 界面. 所谓自动化构建是按照一定 ...

  3. android studio gradle自动签名构建实现

    我为自己代言: 一.在android studio中生成签名文件. 1.在android studio 选中项目,在菜单栏中选择Build. 2.点击Generate Signed APK选项卡. 3 ...

  4. Jenkins+Gradle+Git自动打apk包,并上传到ftp

    软件安装: 1.安装Jenkins.git.AndroidSDK 2.配置AndroidSDK环境变量 ANDROID_HOME:D:\Androidsdk PATH:%ANDROID_HOME%\p ...

  5. Jenkins部署.net自动化构建

    1.环境部署: windows server 2008R2环境   2.相关软件 SVN(源代码管理器:jenkins通过插件从源代码管理器下载代码)   Jenkins(主角)地址:http://f ...

  6. Jenkins添加Windows自动化构建方案

    一.为Jenkins添加Windows节点 这里需要填写远程工作目录,启动方法一项一定要选择"Launch agent via Java Web Start"一项,其它的保持默认. ...

  7. Jenkins和maven自动化构建java程序

    转自:http://www.cnblogs.com/gao241/archive/2013/04/08/3008380.html,版权归原作者所有. Jenkins是一个非常出色的持续集成服务器,本文 ...

  8. windows jenkins dotnet core 自动化构建webapi

    jenkins环境搭建好 注意一下几点: - 需要安装git - 需要安装dotnet core sdk环境 - 遇到这里报错,提示 Repository URL 错误的话,如果确实没有配置错误,重启 ...

  9. jenkins shell脚本自动化构建阿里云k8s上应用

    #!/bin/bash source /etc/profile cd /mnt/workspace/weifeng-ui-pre/ npm i && npm run build rm ...

随机推荐

  1. POJ 1088 滑雪 记忆化优化题解

    本题有人写是DP,只是和DP还是有点区别的,应该主要是记忆化 Momoization 算法. 思路就是递归,然后在递归的过程把计算的结果记录起来,以便后面使用. 非常经典的搜索题目,这样的方法非常多题 ...

  2. 每天一个JavaScript实例-递归实现反转数组字符串

    <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...

  3. 漫谈并发编程(二):java线程的创建与基本控制

    java线程的创建 定义任务           在java中使用任务这个名词来表示一个线程控制流的代码段,用Runnable接口来标记一个任务,该接口的run方法为线程运行的代码段. public ...

  4. 完美攻略心得之圣魔大战3(Castle Fantisia)艾伦希亚战记(艾伦西亚战记)包含重做版(即新艾伦希亚战记)

    (城堡幻想曲3,纠正大家个错误哦,不是圣魔大战3,圣魔大战是城堡幻想曲2,圣魔大战不是个系列,艾伦西亚战记==艾伦希亚战记,一个游戏日文名:タイトル キャッスルファンタジア -エレンシア戦記-リニュー ...

  5. Jedis Client的使用以及序列化

    JedisPool pool = new JedisPool(poolConfig, IP, PORT, timeout); public String set(String key,String v ...

  6. uva:10700 - Camel trading(贪婪)

    题目:10700 - Camel trading 题目大意:给出一些表达式,表达式由数字和加号乘号组成,数字范围[1,20].这些表达式可能缺少了括号,问这种表达式加上括号后能得到的最大值和最小值. ...

  7. Codeforces Round#309 C Kyoya and Colored Balls

    给定一个k表示颜色的种类从1到k 然后接下来k行, 每行一个数字, 代表该颜色的球有多少个 这些球都放在一个包中,然后依次拿出.  要求颜色i的最后一个球, 必须要排在颜色i+1的最后一个球前面,   ...

  8. 元素z-index继承问题

    两同层元素.当中一个的子元素定位与还有一个重叠时,该子元素被覆盖(此时子元素的z-index继承的是其父元素的z-index,不管其z-index多少均被覆盖) <html> <he ...

  9. 设计模式C++达到 3.抽象工厂

    简单工厂模式和工厂模式 要求 同类型的产品子类有共同的方法.这限制了产品子类的扩展.抽象工厂能client它提供了一个接口,它是client而不必指定产品的详细信息.创建多个产品系列产品对象.在归为一 ...

  10. gdb经常使用命令总结

    1: 对于在应用程序中增加參数进行调试的方法:    直接用 gdb app -p1 -p2 这样进行调试是不行的.    须要像下面这样使用:     #gdb app     (gdb) r -p ...