工具安装
-
安装JDK
-
安装Git
-
安装android-sdk
-
安装Gradle(如果使用Gradle Wrapper则不需要提前安装)
-
安装Tomcat
-
安装Jenkins ver. 1.652和相关插件
参考插件列表
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32Android Emulator Plugin
Ant Plugin
Credentials Plugin
CVS Plug-in
Email Extension Plugin
Email Extension Template Plugin
External Monitor Job Type Plugin
FindBugs Plug-in
Git client plugin
Git plugin
Gradle Plugin
Javadoc Plugin
JUnit Plugin
LDAP Plugin
Mailer Plugin
Matrix Authorization Strategy Plugin
Matrix Project Plugin
Maven Integration plugin
OWASP Markup Formatter Plugin
PAM Authentication plugin
Port Allocator Plug-in
Role-based Authorization Strategy
SCM API Plugin
Script Security Plugin
SSH Credentials Plugin
SSH Slaves plugin
Static Analysis Utilities
Subversion Plug-in
Token Macro Plugin
Translation Assistance plugin
Windows Slaves Plugin
WWPass Authentication Plugin
配置Jenkins
系统管理 - 系统设置
Android SDK
Environment variables
添加:
ANDROID_HOME
/root/android-sdk/
JDK
JDK别名
jdk 1.8
JAVA_HOME
/usr/lib/jvm/java-8-oracle/
Git
Git Name``Default
Path to Git executable``git
Gradle
如果使用Gradle Wrapper则不需要配置Gradle
Gradle name
gradle 2.10
GRADLE_HOME
/root/gradle-2.10
Git仓库权限配置
将git仓库中配置可用的ssh密钥文件复制到主机~/.ssh
目录下;或在主机上创建密钥并添加到git仓库中。
配置Jenkins项目
新建 - 输入名称 - 构建一个自由风格的软件项目
源码管理
选择git
-
Repository URL
ssh://xxx.git
-
Branches to build
develop
-
Additional Behaviours
Wipe out repository & force clone
每次Build先清除已有代码再用git clone重新拉取。debug不配置此项加快编译(一般没有必要),release配置此项(确保可靠性)Advanced sub-modules behaviours:Recursively update submodules
递归更新子模块
构建
构建 - 增加构建步骤
Invoke Gradle Script
- 选择
Use Gradle Wrapper
;如果需要使用特定版本的Gradle,则使用Invoke Gradle
并选择Gradle-2.10 Tasks
clean assembleDebug
Root Build script
输入工程根目录(settings.gradle所在目录)相对git项目根目录的路径
Execute shell
执行Shell脚本,例如将生成的apk上传到指定位置。Shell脚本中可以支持BUILD_NUMBER
等变量。
构建后操作
Publish FindBugs analysis results
FindBugs results
Proj/build/reports/findbugs/*.xml
Archive the artifacts
将编译过程中生成的文件存档,例如apk文件、Proguard生成的mapping文件等。
Editable Email Notification
发送邮件通知
Project Recipient List
[email protected],[email protected]
Project Reply-To List
$DEFAULT_REPLYTO
Content Type
HTML
Default Subject
$DEFAULT_SUBJECT
Default Content
xxx
Attachments
Proj/build/outputs/apk/proj-debug-${BUILD_NUMBER}.apk
Attach Build Log
Attach Build Log