了两周终于搞掂了,期间各种搜教程、各种懵逼,各种坑对小白来还是很难的额。废话不多说直接开撸~~~
一、介绍下什么是Gradle
Gradle是一个基于JVM的构建工具,是一款通用灵活的构建工具,支持maven, Ivy仓库,支持传递性依赖管理,而不需要远程仓库或者是pom.xml和ivy.xml配置文件,基于Groovy,build脚本使用Groovy编写。
- gradle对多工程的构建支持很出色,工程依赖是gradle的第一公民。
- gradle支持局部构建。
- 支持多方式依赖管理:包括从maven远程仓库、nexus私服、ivy仓库以及本地文件系统的jars或者dirs
- gradle是第一个构建集成工具,与ant、maven、ivy有良好的相容相关性。
- 轻松迁移:gradle适用于任何结构的工程,你可以在同一个开发平台平行构建原工程和gradle工程。通常要求写相关测试,以保证开发的插件的相似性,这种迁移可以减少破坏性,尽可能的可靠。这也是重构的最佳实践。
- gradle的整体设计是以作为一种语言为导向的,而非成为一个严格死板的框架。
- 免费开源
- 1.一种可切换的,像maven一样的基于约定的构建框架,却又从不锁住你(约定优于配置)
- 2. 强大的支持多工程的构建
- 3. 强大的依赖管理(基于Apache Ivy),提供最大的便利去构建你的工程
- 4. 全力支持已有的Maven或者Ivy仓库基础建设
- 5. 支持传递性依赖管理,在不需要远程仓库和pom.xml和ivy配置文件的前提下
- 6 基于groovy脚本构建,其build脚本使用groovy语言编写
- 7 具有广泛的领域模型支持你的构建
二、安装Gradle
官网教程:https://gradle.org/install/
下载gradle4.8版本的:https://gradle.org/next-steps/?version=4.8&format=bin
步凑如下:
1、安装软件包
[root@hejianlai-jenkins ~]# unzip gradle-4.8-bin.zip -d /usr/local/
[root@hejianlai-jenkins ~]# cd /usr/local/
[root@hejianlai-jenkins local]# ln -s gradle-4.8/ gradle
[root@hejianlai-jenkins local]# ls gradle
bin getting-started.html gradle-4.8 init.d lib LICENSE media NOTICE
2.配置环境变量
[root@hejianlai-jenkins ~]# vim /etc/profile
export GRADLE_HOME=/usr/local/gradle
export PATH=$PATH:${GRADLE_HOME}/bin
[root@hejianlai-jenkins ~]# source /etc/profile
[root@hejianlai-jenkins local]# gradle -v
------------------------------------------------------------
Gradle 4.8
------------------------------------------------------------
Build time: 2018-06-04 10:39:58 UTC
Revision: 9e1261240e412cbf61a5e3a5ab734f232b2f887d
Groovy: 2.4.12
Ant: Apache Ant(TM) version 1.9.11 compiled on March 23 2018
JVM: 1.8.0_171 (Oracle Corporation 25.171-b11)
OS: Linux 3.10.0-693.el7.x86_64 amd64
三、安装sdk
安装包下载地址:http://tools.android-studio.org/index.php/sdk/
步凑如下:
1、安装软件包
[root@hejianlai-jenkins fs01]# tar -zxf android-sdk_r24.4.1-linux.tgz
2、配置环境变量
[root@hejianlai-jenkins fs01]# vim /etc/profile
export ANDROID_HOME=/fs01/android-sdk-linux
export PATH=$ANDROID_HOME/tools:$PATH
[root@hejianlai-jenkins fs01]# source /etc/profile
更新所有的包
[root@hejianlai-jenkins fs01]# android update sdk --no-ui
显示所有可更新包
[root@hejianlai-jenkins fs01]# android list sdk -a
Packages available for installation or update: 206
1- Android SDK Tools, revision 25.2.5
2- Android SDK Platform-tools, revision 28
3- Android SDK Build-tools, revision 28
4- Android SDK Build-tools, revision 27.0.3
5- Android SDK Build-tools, revision 27.0.2
6- Android SDK Build-tools, revision 27.0.1
7- Android SDK Build-tools, revision 27
8- Android SDK Build-tools, revision 26.0.3
9- Android SDK Build-tools, revision 26.0.2
10- Android SDK Build-tools, revision 26.0.1
11- Android SDK Build-tools, revision 26
12- Android SDK Build-tools, revision 25.0.3
13- Android SDK Build-tools, revision 25.0.2
14- Android SDK Build-tools, revision 25.0.1
15- Android SDK Build-tools, revision 25
16- Android SDK Build-tools, revision 24.0.3
17- Android SDK Build-tools, revision 24.0.2
18- Android SDK Build-tools, revision 24.0.1
19- Android SDK Build-tools, revision 24
20- Android SDK Build-tools, revision 23.0.3
21- Android SDK Build-tools, revision 23.0.2
22- Android SDK Build-tools, revision 23.0.1
23- Android SDK Build-tools, revision 23 (Obsolete)
24- Android SDK Build-tools, revision 22.0.1
25- Android SDK Build-tools, revision 22 (Obsolete)
26- Android SDK Build-tools, revision 21.1.2
...
后面jenkins部署时可能会报错说缺少包,我们就可以根据相应的序列号安装软件包,命令如下:
[root@hejianlai-jenkins fs01]# android update sdk -a --no-ui --filter 9,20
四、安装ndk(可选,因为我的项目用到ndk)
安装包下载地址:http://dl.google.com/android/ndk/android-ndk-r8e-linux-x86_64.tar.bz2
1、安装软件包
[root@hejianlai-jenkins fs01]# tar -jxf android-ndk-r8e-linux-x86_64.tar.bz2
2、配置环境变量
[root@hejianlai-jenkins fs01]# vim /etc/profile
export ANDROID_DNK_HOME=/fs01/android-ndk-r8e
export PATH=$ANDROID_DNK_HOME:$PATH
[root@hejianlai-jenkins fs01]# source /etc/profile
显示下面内容说明安装成功
[root@hejianlai-jenkins fs01]# ndk-build
Android NDK: Could not find application project directory !
Android NDK: Please define the NDK_PROJECT_PATH variable to point to it.
/fs01/android-ndk-r8e/build/core/build-local.mk:130: *** Android NDK: Aborting . Stop.
五、配置jenkins
【系统管理】——【系统设置】,添加sdk和ndk的环境变量。
【系统管理】——【全局工具配置】,添加gradle环境变量。
创建一个自由风格的项目
配置Invoke Gradle script
配置Archive the artifacts
构建后的效果
到此大功告成,期间遇到很多坑详情请看:https://www.cnblogs.com/Dev0ps/p/9219220.html