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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM