Jenkins + gradle 自动打包jar

来源:互联网 发布:淘宝注册网家该怎么 编辑:程序博客网 时间:2024/06/05 02:09

Jenkins 的部署搭建就略过了,自己百度。。


本文只是简略介绍下使用Jenkins + gradle 自动打包jar的一些配置。


1. 登录Jekins 配置网站

2. 新建-->构建一个自由风格的软件项目-->ok,此时就创建了一个项目

3. 项目的配置包括5部分:

3.1 General

此部分是对项目的一些概要信息,自行填写即可

3.2 源码管理

此部分是项目的源码管理,依据实际情况自行选择自己的导入方式,我使用的git,只需输入git的clone地址等信息即可。

3.3 构建触发器

依据实际情况自行选择,我的项目未用到

3.4 构建环境

依据实际情况自行选择,我的项目未用到

3.5 构建

此处是关键部分,选择构建的方式,我的项目使用gradle进行构建的,所以选择 Invoke Gradle plugin。

选择Gradle的版本,可以使用默认安装或自己另行安装的都行。  注意:如果没有安装gradle,可以在插件中进行选择安装,或者自己下载,然后解压到指定路径。

选择Tasks,此处的Task是你的Android 项目在build.gradle里建立的Task。 我的Task的名字是makeJar, 代码如下:

task makeJar(type: proguard.gradle.ProGuardTask, dependsOn: "build") {// 未混淆的jar    injars 'build/intermediates/bundles/release/classes.jar'// 混淆后的jar路径    outjars 'libs/Library.jar'// 具体需要keep住的类    configuration 'proguard-rules.pro'}

这个Task很简单,就是使用混淆文件对build得到的jar包进行混淆,输出到libs目录下。 注意:该Task是依赖于build任务的,所以执行该Task会先执行Build。


其实真正执行构建的时候,就是执行了 gradle makeJar 这个命令


为了管理我们的所个版本的jar文件,我们需要将每次输出的jar保存到一个指定位置。这个任务用一个脚本来完成。

‘增加构建步骤’-->Execute shell,输入脚本内容:

mkdir -pv ${WORKSPACE}/builds/$BUILD_NUMBER
cp -R /Users/applebar/.jenkins/workspace/Android_SDK/ihealthdevicesdk/libs/*  ${WORKSPACE}/builds/$BUILD_NUMBER
cp -R /Users/applebar/.jenkins/workspace/Android_SDK/app/libs/* ${WORKSPACE}/builds/$BUILD_NUMBER

内容很简单,就是依据每次的build号生成一个文件夹,把我们需要导出的内容copy到该文件夹下即可。


注:

1. 如果是打包Android App,则不需要配置Tasks,只需在Switches里输入相应的命令即可,然后把apk copy到指定位置即可。

2. 既然是Android项目构建,自然Android SDK是少不了的,自己copy到Jekins服务器上,同时,把项目内的Android SDK目录指定到本地路径即可。

3.6 构建后操作

此处就是构建完成后的一些处理,自行选择,我在此处使用了邮件发送功能。这样,每次构建完成后,相关人员就会收到通知。


0 0
原创粉丝点击