Jenkins系列之七——前端app自动打包
了两周终于搞掂了,期间各种搜教程、各种懵逼,各种坑对小白来还是很难的额。废话不多说直接开撸~~~
一、介绍下什么是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的整体设计是以作为一种语言为导向的,而非成为一个严格死板的框架。
- 免费开源
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
如对您有帮助,支持下呗!
微信
支付宝