上一篇主要是看下打包的原理,及操作了eclipse项目的打包,尽管我说了现在有很多工具可以打包,但是了解打包的具体原理还是挺重要的,不过在了解原理后,我们在工具如此丰富的情况下还需要自己手动去操作吗,一个项目还好打包,假如有好几个项目都要打包,每个版本都需要打包,还要去打各种渠道的包,是不是很繁琐,有人说studio完全可以啊。假如我们有这样的需求,不需要手动打包,定时在休息时间系统自动去打包,而且会自动从svn上update项目,这样是不是很方便。这里就要推荐一款自动化构建很牛叉的软件jenkins。
需求:要求对项目进行持续集成,也就是说通过某种方式定时(比如每天凌晨三点)自动将SVN库中最新的代码down下来编译打包,也可以通过Jenkins手动构建最新的代码打包,不用每次都由手动打包生成apk。
一、使用环境:
1、 windows7 64bit;
2、 jdk1.8
3、 android sdk
4、 gradle2.10
配置jdk、sdk、gradle的环境变量,jdk、sdk最好都是最新的版本否则编译可能出现api不存在等问题。
配置好之后下载jenkins:
下载地址:http://mirrors.jenkins.io/war/
下载最近的war包(latest)
安装:
方法一:如果有tomcat,将下载的jenkins.war包直接放到tomcat下的webapps目录下,然后启动tomcat即可安装完成,接下来登录:http://localhost:8080/jenkins就能进入jenkins系统页面(前提安装tomcat并配置其环境变量)。
方法二: 进入war包所在目录,输入cmd,执行Java -jar jenkins.war
如果存在端口占用,则换个端口即可。
二、配置jenkins
安装插件,在安装过程中会提示安装插件,第一个是默认推荐的插件,第二个是自己选择要安装的插件,插件安装完后创建用户和用户名完事后登陆。最主要的两个插件Gradle Plugin,svn在默认的推荐中已经安装。
Jdk、sdk、gradle配置好环境变量就好,jenkins会使用其默认的环境变量。
三、构建项目
点击新建,选择构建一个自由风格的项目。
项目使用的是svn,svn仓库地址如果需要账号密码登录,直接点击add添加
构建触发器
Build periodically:周期进行项目构建(它不关心源码是否发生变化)
Poll SCM:定时检查源码变更(根据SCM软件的版本号),如果有更新就checkout最新code下来,然后执行构建动作,这里我选择它。
第一个参数代表的是分钟 minute,取值 0~59;
第二个参数代表的是小时 hour,取值 0~23;
第三个参数代表的是天 day,取值 1~31;
第四个参数代表的是月 month,取值 1~12;
第五个参数代表的是星期 week,取值 0~7,0 和 7 都是表示星 期天。
如H 3 * * * 表示的就是每天凌晨3点检查一次源码变化。
选择 “构建”,添加“Invoke Gradle script”(stuio项目)
也可以选择Invoke gradle,系统环境变量里配置了gradle环境变量,选择相应的gradle版本。
点击ok,构建项目。
Gradle配置(如果有做过studio打包的就不用看了,按照你的gradle配置来吧):
参考 1、http://www.jianshu.com/p/5866e36c81fa
2、http://blog.csdn.net/zanelove/article/details/44174391
3、http://www.2cto.com/kf/201605/511923.html