1.配置java環境
在sun官網下載,解壓后放入/usr/java下,並配置環境變量如
vi /etc/profile 在最底部加入如下配置(
注:添加環境變量,都是在文件最底部添加)
JAVA_HOME=/usr/java/jdk1.7.0_80
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
修改完后執行 source /etc/profile更新
2.配置android sdk
在
https://developer.android.com/studio/index.html 最下面的 僅獲取命令行工具,選擇
android-sdk_r24.4.1-linux.tgz進行下載,完成后解壓到/home下。
解壓完成后需要更新sdk,進入sdk下的tools目錄。
執行 ./android update sdk -h 查看命令說明,
我的更新方式為:
./android update sdk -u -t add-on,extra,platform,platform-tool,tool
關於android的命令問題,由於系統是64位的,android的命令是32位,所以需要安裝32位的支持
也可以參考這個,關於ndk的配置,不過我沒配置ndk
yum install zlib.i686
yum whatprovides libstdc++.so.6
yum install libstdc++-4.8.5-4.el7.i686
然后配置環境變量
export ANDROID_SDK_HOME=/home/android-sdk-linux
export PATH=$ANDROID_SDK_HOME/tools:$ANDROID_SDK_HOME/platform-tools:$PATH
修改完后執行 source /etc/profile更新
3.配置gradle
我們項目使用的是2.10版本,直接使用如下地址下載
下載完成后解壓到/opt目錄下,並配置環境變量
export GRADLE_HOME=/opt/gradle-2.10
export PATH=$GRADLE_HOME/bin:$PATH
修改完后執行 source /etc/profile更新
4.安裝jenkins
在官網
https://jenkins.io/選擇centos下載,然后到了rpm packages列表的頁面
按照上面的命令執行:
sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins.io/redhat-stable/jenkins.repo
sudo rpm --import http://pkg.jenkins.io/redhat-stable/jenkins.io.key
yum install jenkins
jenkins默認端口號是 8080,可以在配置文件修改
配置文件的位置:
/etc/sysconfig/jenkins
同時注意,需要在防火牆配置jenkins端口
5.配置jenkins
第一次進去按照要求輸入密碼,安裝插件時選擇推薦安裝的那些。
初始化完之后,在左上角選擇進入
Global Tool Configuration
分別把jdk,gradle配置好,至於git是已經裝好了的,如下圖
接下來,需要配置git的
Credentials
由於是獲取gitlab上的代碼,需要配置用戶(
注:如果是gitlab需要將本機的ssh 公鑰配置到分配的賬號上)
填上在gitlab上分配的賬號密碼,自己定義id和描述,點擊OK
准備工作已經做完,接下來就是配置任務了:
在首頁點擊新建,自定義個任務名稱,然后類型選擇自由風格的軟件項目,點擊OK。
下面就是任務的配置參數:

填上git地址,針對gitlab的,推薦選擇https開頭的地址,避免ssh的一系列權限問題
同時選擇需要拉取的分支
觸發器我配置的是每10分鍾就執行一次
構建時選對gradle版本,我打的是debug包
然后保存就ok了,任務會按照配置的觸發器執行。第一次可能會失敗,請參看注意事項。
注意事項:
第一次拉取代碼的時候,由於文件
local.properties沒有放入版本管理,需要自己新建,並配置sdk:
sdk.dir=/home/android-sdk-linux
關於jenkins中途出現如下問題
2.10\taskArtifacts\cache.properties.lock (Access is denied)
我的解決方法是:直接刪除了整個項目,同時也將用戶目錄下的.gradle/caches清空,重新執行任務
需要自己新建local.properties文件配置sdk目錄
