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

时间:2023-03-08 15:37:31
android--jenkins+gradle+android自动化构建apk步骤(转)

第一步,安装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--jenkins+gradle+android自动化构建apk步骤(转)

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

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

第四步,下载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地址,其它为默认。

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

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

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

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

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

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

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

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

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

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

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

android--jenkins+gradle+android自动化构建apk步骤(转) android--jenkins+gradle+android自动化构建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