相关环境


1    Linux Centos6.3 2.6.32-279.el6.x86_64    
 各相关软件版本jenkins+gitlab构建安卓自动编译环境_javajenkins+gitlab构建安卓自动编译环境_java_02哈哈哈,这里有一个坑,被我踩了,后面再详细说。 
SDK更新,切换到android目录,执行tools/android update sdk –no-ui两个小时左右,确保磁盘有足够空间,总大小6G左右 ***因为源码语言指定用 sdk build-tools 22.0.1打包,所以需要另外装 build-tools的版本,方法如下1、使用android list sdk –all   查看所有可用的更新包,找到 build-tools22.0.1编码为82、使用android update sdk –no-ui –all –filter 8安装build包Note:   android list target   查看本地已经安装的SDK 二、安装jenkinsjenkins+gitlab构建安卓自动编译环境_java_03三、jenkins的启动和初始化配置     jenkins+gitlab构建安卓自动编译环境_java_04 使用 http://localhostip:8080即可以访问jenkins页面,如果不能访问,请检查iptables,本例中将iptables关闭,iptables相关知识请自行脑补首次登录,出现的第一个页面是这样子的,要通过主机上一个文件来解锁,这个设计很奇妙jenkins+gitlab构建安卓自动编译环境_java_05第二个页面为选择安装插件,因后面还有插件需要安装,这里选默认就好了,等待默认的插件安装完成。完成后的主界面是这样子的
1、jenkins插件安装2、初始化设置系统管理 –>全局化设置里增加以下键值系统设置Global Tool Configuration设置jdk、git 和gradle 安装路径(此处有坑)四、新建构建任务   1、选择构建自由风格的软件项目   2、源码管理,选git,若没有出现 git选项,请回头重新安装Git plugin插件,填写gitlab仓库地址,增加gitlab仓库验证方式,gitlab仓库验证有点波折,多尝试就好   3、构建触发器jenkins其实可以和 gitlab 的 hooks结合起来用,有推送就触发,懒得去研究了,直接用了SCM排程5分钟检查一下,有新更新就打包,也挺好jenkins+gitlab构建安卓自动编译环境_java_06第一个参数代表的是分钟 minute,取值 0~59;第二个参数代表的是小时 hour,取值 0~23;第三个参数代表的是天 day,取值 1~31;第四个参数代表的是月 month,取值 1~12;最后一个参数代表的是星期 week,取值 0~7,0 和 7 都是表示星期天。如H/5 * * * * 表示的就是每5分钟检查一次源码变化。   4、构建增加Invoke Gradle script,gradle版本选我们自己增那个,不要用默认jenkins+gitlab构建安卓自动编译环境_java_07     5、构建后     (待研究)  这样子就可以开始构建了,点击立即构建,构建完成时显示蓝色就是构建成功,红色就是构建失败了 构建完成后的apk文件通常放在仓库目录的build/outputs目录下,其实可以用命令在构建完成后拷出去,这个自行脑补吧
五、jenkins加SDK的各种坑1、构建时提示Cannot run program "gradle" (in directory "/var/lib/jenkins/jobs/*****/workspace"): error=2, 没有那个文件或目录网上关于没有文件和目录的问题,有各种说法,试了最后都没有解问题,其实是因为gradle的问题,记得我们第一步在系统设置里面指定了gradle的安装目录么,在新建构建任务的时候,在构建那一步,gradle 版本后面的下拉框要选,指定的版本,不能用默认,请往上翻,注意我画了三个箭头的那张图。2、另外一个坑,提示无访问权限   我把gradle解压到了/root目录下面,jenkins运行时,会使用jenkins的身份运行gradle,就会出现权限不足,无法访问的情况。3、Could not init /tmp/hudson1687987969108344361tmp   未安装 git,或在系统设置里未指定git安装路径4、出现无法连接http 错误jenkins+gitlab构建安卓自动编译环境_java_08
请检查git版本,删除centos自带的 git,编译安装2.7以上版本5、提示java内存溢出1    java.lang.OutOfMemoryError: Java heap space     更改java的内存栈大小:set JAVA_OPTS= -Xms1024m -Xmx1024m
六、所需要依赖到的库libstdc++-4.4.7-17.el6.i686zlib-1.2.3-29.el6.i686zlib-deve