之前同事分享过,我重新搭建了一遍,把ubantu环境下的细节完善了下,目的是可以按照这个文章直接搭建出可用的jenkins打包平台,之前的分享包含了sonar代码扫描,这里就不写了;直接上干货:
-------------------一,基础知识普及(可跳过)-----------------------------
工具:XShell(OpenSSH),等
下载及配置:Android SDK(NDK),Gradle
Linux服务器地址:xxxxx
缺点:Linux环境命令比较繁杂,不方便使用,未达到可视化操作的实际要求
用到的基本命令:
Linux环境下常用命令:
cd .. 返回上一级目录
cd /xxx/ 进入指定目录
vi xxx.xx (创建)编辑指定文件
cp –R xxx.xx xxx.xx 复制文件
rm –rf xxx 删除文件(慎用)
locate 文件名 查找文件位置
export 查看环境变量
export PATH=$PATH:/要添加的路径(==sudo vim /etc/profile)
Linux环境下代码质量统计
sonar-scanner:需要在项目的工程目录下配置sonar-project.properties
Android Studio平台下构建项目
gradlew clean 清理build文件
gradlew build 构建项目
gradlew assembleRelease 打包生成Release包
Linux环境下构建项目
gradle clean
gradle build
Gradle assembleRelease
特别注意:两个平台下对应的local.properties要依据各自的sdk目录进行配置,linux环境下从svn地址下载下来的工程,local.properties需要进行修改,配置成提前配置好的环境变量地址即可。
Jenkins
基于java开发的持续集成工具,方便易用,提供支持各种构建插件。包括sonar、gradle、shell等
必须配置:jdk1.8、tomcat与Maven。
默认进入Jenkins环境,是需要下载相关工具以及插件的。如果想要在Jenkins环境下进行代码质量检测,只需要下载相关的插件即可。
------------------------------二、环境配置的分割线--------------------------
这里说明下,我们的jenkins是用的墙内方法,就是下载war包到tomcat的webapp目录下:
------------------------------三、问题的分割线--------------------------
问题1: E: 无法获得锁 /var/lib/apt/lists/lock - open (11: 资源暂时不可用) E: 无法对目录 /var/lib/apt/lists/ 加锁 解决:删掉锁:sudo rm /var/lib/apt/lists/lock 问题2:ubuntu系统执行sudo apt-get update命令时不能连接ppa.launchpad.net的问题!(不懂原理) 解决: 1、安装npm sudo apt-get install npm 2、下载安装http代理 sudo npm i -g http-proxy-to-socks 3、使用代理 sudo apt-get -oAcquire::Http::Proxy= update 再执行一遍 sudo apt update
------------------------------四、jenkins配置的分割线--------------------------
其中:
源码管理:构建项目的代码来源
构建触发器:构建的时间,条件等
构建环境(可选)
构建:代码检测,gradle构建,打包
开始配置:
系统配置:
打包配置:
打包配置:
之后直接构建就行了,构建成功的文件在你打包设置的目录里;
这里就完成了,留了个作业:因为我们再上面配置了打包不用登陆账号,这个在jenkins里配置下吧。相信大家百度就能解决了。