自动化打包是一个较少沟通成本提高工作效率的一种方式,最近公司在做相关的项目过程中,提出了这个解决方案,现记录下来,供大家参考和个人记忆,本篇博文较长,希望大家耐心阅读。
jenkins 安装
① 下载 Jenkins
地址:https://jenkins.io/download/
有两种方式进行安装,一种是war包,一种是msi包,此篇博文讲述的是war包安装方式,msi方式比较简单,这里就不做详细介绍了,如果有需要大家可以下载博文末尾给出的网盘资源。
② 下载Tomcat
根据个人电脑情况选择对应版本下载,本人是windows 64位系统
③ 安装war包到Tomcat服务
将war包放置到Tomcat安装目录webapps目录下
④ 启动Tomcat服务器,配置Jenkins
打开浏览器,输入http://localhost:8080/jenkins/ 进行访问,按提示找到Jenkins生成的密码并粘贴到框中,开始部署Jenkins
选择Jenkins插件,选择建议安装的插件,开始安装
创建第一个用户及密码
部署完成
安装过程到这里就结束了,接下来开始配置我们的Jenkins
Jenkins 配置
① 全局工具配置,配置 JDK / Git / Gradle
② 系统工具配置
③ 插件安装(注:此步骤主要是针对于在部署Jenkins过程中插件下载失败或者下载新的插件)
大家都知道“墙”的存在,所以出现下载失败,大家不要慌张,也没必要去为了下载去买相关的翻墙资源,教大家两种方式去下载插件,第一种是直接下载插件,地址是:http://updates.jenkins-ci.org/download/plugins/ ,按照下图的上传插件步骤进行插件上传安装;第二种是通过国内镜像下载,按照下图升级站点的方式将url替换为如图的链接,url为:http://mirror.xmission.com/jenkins/updates/update-center.json
OK,到这里必要的插件安装和相关配置就结束了,前期准备工作已经结束,接下来就到了激动人心的时刻,我们该开始创建属于我们的自动化打包项目。
创建自动化任务
① 第一步点击“新建任务”
② 输入任务名称,选择构建自由风格软件项目
③ 填写项目描述,设置丢弃策略
④ 配置参数化构建过程,此时我选择的只是其中一种,选项参数,有两个选项一个是Debug一个是Release,分别对应的是测试版APK与正式版APK
⑤ 在 ④ 中点击“高级”,自定义工作空间,配置Jenkins工作空间,可用来存储Jenkins远程拉取的源码
⑥ 选择源码来源,本人使用的是GitHub存储的代码,所以此处的URL是GitHub上对应项目的URL链接,之后选择Add添加GitHub的账号与密码,这种方式是使用http的方式拉取代码,可以选择代码获取的分支名称,默认主干master
还有一种是通过SSH的方式拉取代码,此时就要在选择“类型”时,选择如下图箭头所指的类型
接着填写你的用户名和对应的SSH方式的私钥,这个私钥是你在GitHub上所配置的SSH公钥时,所生成的私钥,这个两个秘钥要配对才可以正常访问。
⑦ 构建触发器,选择“定时构建”,本人设置的是每五分钟进行一次构建
选择“轮训SCM”,配置每五分钟进行一次构建,此时是否执行构建任务取决于你是否有代码提交,如果提交则进行构建,否则不进行
还有一种是选择由GitHub或GitLab在接收到代码提交后,自动触发构建,而且还可以指定分支,此种方式比较复杂,由于篇幅原因在这里就不再叙述了,如果需要我会在以后的博文中给大家补充进来。
⑧ 构建,选择箭头所指的Gradle方式构建
选择你在全局工具配置过程中设置的Gradle配置,并编写Task执行Gradle任务
本人的Task是:clean assemble${APP_TYPE} --stacktrace --info --debug
⑨ 新建任务完成,可以点击下图箭头进行参数构建或更改配置操作
到这里本篇博文已经接近尾声,希望可以通过本篇博文,让大家对Android的自动化打包有一个全面的认知,接下来给大家补充一下,在这个过程中出现过得异常,供大家学习。
异常 ① :
解决:设置你需要编译的源码,Jenkins本地下载远程代码后的路径,在“构建”中点击“高级”进行设置
异常 ② :
解决:配置使用自定义工作空间
感谢大家耐心阅读,如果大家喜欢欢迎大家点赞支持!!!