当前位置: 移动技术网 > IT编程>移动开发>Android > jenkins 远程构建Android的过程详解

jenkins 远程构建Android的过程详解

2019年07月24日  | 移动技术网IT编程  | 我要评论

魔界的女婿 笔趣阁,qq飞车小橘子邪恶图,创维47l01hf

由于企业的需求,需要做一个网站开分享每个版本的android的app,所以需要使用的工具如下:

  jenkins平台,远程编译环境服务器一台,web服务器一台,根据自己的选择,可以搭配自己的资源,废话少说,直奔主题

  1. jenkins的操作

  在jenkins中添加一个节点,设置好远程的工作目录,创建好服务器的标签,然后创建好相关的环境键值对,比如android_home,java_home,gradle_home等,这些都是比较平常的操作,这里就不罗嗦了,值得注意的有两点:第一,java的路径问题,由于jenkins的主机配置从节点,需要找特点的java路径,有时,类似/usr/java/jdk这样自动编译好的路径,及时配置在系统路径下,也不一定能识别,这个需要注意一下,处理方法很简单,软连接就ok了;第二,就是git的问题,如果软件的管理是使用git的方法,注意你远程节点git的版本,如果比较老旧,那就要下载编译比较新的版本,依然注意系统的路径,git-core是重点,如果找不到它,你想用git-remote-https的方式去pull远程的git仓库,那注定是失败,哈哈,网上找找相关文章,好好查阅一下吧

  2. 远程编译服务器上的操作

  下面说重点的东西,就是远程编译服务器上的相关设置,也是本博客的重点

  使用的环境如下:

  系统:centos6.5

  工具: zlib.i686、glibc.i686、jdk-7u79-linux-x64+(根据自己项目调整版本)、android-sdk_r23.3.4-linux 、gradle2.4+ (android-studio)

  由于比较仓促,我使用root操作的,当然创建一个普通用户比较好,就是特别注意目录的操作权限问题。

  由于我已经在一个可以翻墙的服务器上更新了sdk,这个时间你可以出去旅个游,然后回来也差不多了(下载更新地址    http://mirrors.opencas.cn/android/repository/)

  1.java环境的下载

  2.android环境的下载

  3.android-studio的下载(项目的引导编译工具gradle在里面)

  把上述的这些写入系统变量,简单一下,如果是普通用户,则在家目录的环境配置文件中写入,我的配置如下:

  java_home=/usr/java/jdk1.7

  jre_home=$java_home/jre

  android_home=/usr/local/android/sdk

  path=$path:$java_home/bin:$jre_home/bin:/usr/local/android-studio/gradle/gradle-2.4/bin:$android_home/tools:$android_home/platform-tools

  classpath=.:$java_home/lib/dt.jar:$java_home/lib/tools.jar:$jre_home/lib

  export java_home jre_home path classpath android_home

  由于android编译需要32位c编译包,所以 zlib.i686、glibc.i686在centos上是必备软件

  yum install zlib.i686 glibc.i686  -y,请下载安装

  更新的过程比较繁杂,请耐心等待吧

  然后是jenkins里面的项目配置了,创建一个新的项目,使用标签,即刚才创建的从节点,一切已经配置完成

  选择git的项目地址,添加用户名密码认证,选择分支

  我这里构建的是shell的poll scm(轮询),每个小时一次

  构建也是使用shell操作,我的配置如下:

  cd /home/data/android/workspace/iwu-android_check_ticket

  rm -rf app/build/output

  export java_home=/usr/java/jdk1.7/

  export android_home=/usr/local/android/sdk

  /usr/local/android-studio/gradle/gradle-2.4/bin/gradle -pbuildnum=b${build_number} assemblerelease

  增加构建后操作

  选定你的web服务器,然后要传输的文件

  app/build/outputs/*.html,app/build/outputs/lint-results_files/*,app/build/outputs/apk/*.apk

  放在指定的目录,注意远程文件放置的配置,我这里是

  iwu_android_check_ticket/build_${build_number}(jenkins里面有很多的变量很好用,自行研究)

  执行的操作如下:

  cd /data/repository/iwu_android_check_ticket/build_${build_number}

  mv app/build/outputs/* .

  rm -rf app

  这样每次编译好放置的文件目录不会存放任何文件,避免目录容量逐渐变大

  3. web服务器的操作

  到这里就比较好办了,随便来一台web服务器,配置一下项目放置的路径,注意web里面的一些权限

       以上就是jenkins 远程构建android的过程的资料整理,后续继续补充相关资料,谢谢大家对本站的支持!

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网