Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)

继上一篇文,这回分享下使用jenkins+gradle给android打包,服务器环境是centos7.1

首先,对于新服务器,你可能需要依次安装jdk 、android sdk 、gradle、jenkins

一、安装jdk

1、从官方网站下载最新jdk 

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

如图,选择最新版本进行下载,根据你服务器选择64位或32位版本进行下载。

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第1张图片

2、解压后放入合适目录,一般企业开发会分给你一个固定目录进行安装软件,如/opt/app

解压命令:tar -zxvf jdk-xxxx.tar.gz

3、配置环境变量

执行: vi /etc/profile ,  输入以下配置,其中jdk版本根据实际版本进行写入。

#set java environment

JAVA_HOME=/opt/app/jdk1.8.0_111

JRE_HOME=/opt/app/jdk1.8.0_111/jre

CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib

PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

export JAVA_HOME JRE_HOME CLASS_PATH PATH

然后执行 source /etc/profile更新


二、安装android sdk

1、从官方网站下载命令行工具最新版 https://developer.android.com/studio/index.html

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第2张图片

同样,解压到/opt/app,到sdk的tools目录下执行更新命令:

./android update sdk -u -t add-on,extra,platform,platform-tool,tool

2、配置sdk的环境变量

打开/etc/profile 文件,写入:

export ANDROID_SDK_HOME=/opt/app/android-sdk-linux

export PATH=$ANDROID_SDK_HOME/tools:$ANDROID_SDK_HOME/platform-tools:$PATH

执行更新 source /etc/profile

三、安装gradle

打开网址 https://gradle.org/gradle-download/,选择你项目编译所需要的版本,如我选择的是2.14.1

解压至 /opt/app, 然后配置环境变量:

export GRADLE_HOME=/opt/app/gradle-2.14.1

export PATH=$GRADLE_HOME/bin:$PATH

执行更新 source /etc/profile

四、安装jenkins

在官方网站 https://pkg.jenkins.io/redhat-stable/ 下载安装包 ,如jenkins-2.19.4-1.1.noarch.rpm

执行安装: yum install jenkins-2.19.4-1.1.noarch.rpm

成功安装后,启动jenkins: service jenkins start

输入网址http://xxx.xxx.xxx.xxx:8080/  可以打开jenkins配置页面, 默认是8080端口,可以修改

 执行:vi /etc/sysconfig/jenkins

 修改  JENKINS_PORT="8090"

执行命令重新启动: service jenkins restart

注意: 如果修改端口后启动不了,记得把防火墙端口打开,或者直接关闭防火墙

五、配置jenkins job

首次进入jenkins,会提醒你安装插件,就安装推荐的即可。但是会由于网络的缘故有些插件安装不上,你也可以离线安装需要的插件,至少git、gradle的插件需要安装。

如果一直提示你安装插件,而一直进入不到首页,可以打开这个页面http://192.168.20.31:8080/restart

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第3张图片


如图点击“管理插件”弹出如下页面,大部分插件可在线安装,可以在可选插件中选中需要的插件点击安装

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第4张图片

有些地区点击“可选插件”不能显示任何东西,是因为网络的缘故,你可以选择‘“高级”->"升级站点",替换下url (http://mirror.xmission.com/jenkins/updates/update-center.json),如果还是在线安装不了插件,也可以离线进行安装,下载好插件后,选择插件上传。

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第5张图片

安装好必要的插件之后,在jenkins中配置jdk,git,gradle

点击“系统管理”->Global Tool Configuration,

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第6张图片

如图配置好,接下来可以新建一个job

输入job名字,选择“构建一个自由风格的软件项目”

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第7张图片

接下来给这个job配置参数,根据需要选择choice 或者String参数

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第8张图片

填入参数

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第9张图片
Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第10张图片

注意:VERSION参数同时也需要在你的项目里使用同样的参数,这样才可以在构建时手动输入版本号设置生效。

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第11张图片

配置git源码地址

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第12张图片

其中Credentials项是配置好的SSH秘钥名字,  首先在服务器中生成公私钥对,在终端输入如下命令:

ssh-keygen -t rsa -C "[email protected]"

查看公钥:cat ~/.ssh/id_rsa.pub

查看私钥:cat ~/.ssh/id_rsa

然后在jenkins中作如下配置,目录如图

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第13张图片

username: 手工输入名字,随便填

private key:ssh私钥(注意不是公钥)

passphrase:密钥的密码,即生成密钥时设置的密码,没有就不要填。

ID、Description无需填。

移步你的gitlab,在SSH key中填入你服务器中的公钥

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第14张图片


这样你的服务器就可以访问gitlab了。


在“增加构建步骤”中选择“invoke Gradle script”

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第15张图片

配置构建任务,注意图中红框要选中,不然配置的参数不会生效。

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第16张图片

点击保存,这个JOB配置完毕。

返回首页,点击刚刚配置的job->Build with Parameters,最终效果如下,点击“开始构建”即可开始编译项目,生成的apk在目录“工作空间”里可以找到。

Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细)_第17张图片

你可能感兴趣的:(Jenkins+Gradle+Git+Centos 实现android持续集成、打包(超详细))