美文网首页
Linux配置AndroidSDK&Jenkins远程部署

Linux配置AndroidSDK&Jenkins远程部署

作者: 却把清梅嗅 | 来源:发表于2018-10-10 00:35 被阅读0次

最近将公司的项目部署了Jenkins持续集成,遇到了几个麻烦的点,其中之一就是将Android SDK进行配置在远程服务器(总结下来还是自己对Linux命令还不够熟悉),特此记录。

  • 系统: Ubuntu Server 16.04.1 LTS 64位
  • 前置:完成JDK的环境搭建

1.下载SDK

点击进入下载网址 下载对应的 android-sdk_r24.4.1-linux.tgz 文件。

2.解压下载的压缩包

  • tar -zxvf android-sdk_r24.4.1-linux.tgz

3.安装32位库

Android SDK中的adb程序是32位的,Ubuntu x64系统需要安装32位库文件,用于兼容32位的程序:

  • sudo apt-get install -y libc6-i386 lib32stdc++6 lib32gcc1 lib32ncurses5 lib32z1

4.配置环境变量

  • export ANDROID_SDK_HOME=/home/XXX/android/sdk/android-sdk-linux
  • export PATH=$PATH:${ANDROID_SDK_HOME}/tools
  • export PATH=$PATH:${ANDROID_SDK_HOME}/platform-tools

通过 vim /etc/profile 查看编辑 环境变量的配置(或者直接通过export命令查看):

5.下载最新SDK工具

进入tools目录下,输入./android -v list sdk命令查看可下载更新的SDK列表:

官方提供了一些参数供开发者选择性更新:

Action "update sdk":
Updates the SDK by suggesting new platforms to install if available.
Options:
-f --force Forces replacement of a package or its parts, even if something has been modified
-u --no-ui Updates from command-line (does not display the GUI)
-o --obsolete Installs obsolete packages
-t --filter A filter that limits the update to the specified types of packages in the form of a comma-separated list of [platform, tool, platform-tool, doc, sample, extra]
-s --no-https Uses HTTP instead of HTTPS (the default) for downloads
-n --dry-mode Simulates the update but does not download or install anything

上述参数通过android update sdk --filter <component> --no-ui命令进行 组件 的过滤性筛选。

笔者选择了简单粗暴,直接通过android update sdk --no-ui命令下载所有版本的sdk。

6.将sdk配置到Jenkins

打开Jenkins系统配置界面,将对应的SDK根目录配置给环境变量:

7.构建错误处理

缺少License

错误日志:

What went wrong:
A problem occurred configuring project ':xxx'.
Failed to install the following Android SDK packages as some licences have not been accepted.
build-tools;27.0.3 Android SDK Build-Tools 27.0.3
To build this project, accept the SDK license agreements and install the missing components using the Android Studio SDK Manager.

解决方案:

将本地sdk目录下的licenses文件夹中的License文件传到远程服务器中:

对应版本的SDK Build-Tools不存在

错误日志:Failed to install the following SDK components:
build-tools;27.0.3 Android SDK Build-Tools 27.0.3
The SDK directory is not writable (/home/sdk/android-sdk-linux)

解决方案,更新对应的BuildTools版本:

查看所有版本列表:

  • ./android list sdk -a

更新对应的27.0.3版本:

  • android update sdk -u -t 7 -a

相关文章

  • Linux配置AndroidSDK&Jenkins远程部署

    最近将公司的项目部署了Jenkins持续集成,遇到了几个麻烦的点,其中之一就是将Android SDK进行配置在远...

  • Django 项目 Linux 远程部署记录

    Django 项目 Linux 远程部署记录 Django 项目部署。该项目名称为 shop-search,配置端...

  • Xshell

    阿里云无法连接Windows实例ECS远程连接 Linux 实例阿里云从购买到web应用部署整个过程配置### 常...

  • Tomcat8安装与部署项目到Linux服务器

    部署tomcat服务到Linux服务器 安装与配置Tomcat 在官网下载tomcat压缩包 通过远程文件传输,上...

  • SecureCRT操作

    Ssh远程终端(SecureCRT):远程操作linux命令,实现异地程序的部署操作 安装openssh-serv...

  • 自动发布到远程服务器

    关键词:自动发布版本 参考: 远程部署项目(linux) jenkins把包传到远程服务器上 自动部署war包到远...

  • 总结SecureCRT操作

    lSsh远程终端(SecureCRT):远程操作linux命令,实现异地程序的部署操作 n安装openssh-se...

  • SecureCRT操作

    Ssh远程终端(SecureCRT):远程操作linux命令,实现异地程序的部署操作 虚拟机上: 安装openss...

  • Linux操作系列之04---VirtualBox配置SSH远程

    Linux操作文档系列之04 VirtualBox配置SSH远程登录 根据网络设置不同,有不同的ssh远程登录配置...

  • 配置 SSH 简化远程访问

    配置 SSH 简化远程访问 Linux/Mac 下载工具的一些推荐 LINUX 配置 samba 共享文件夹给...

网友评论

      本文标题:Linux配置AndroidSDK&Jenkins远程部署

      本文链接:https://www.haomeiwen.com/subject/zggyaftx.html