当前位置: 首页 > 面试题库 >

在Jenkins构建过程中运行android模拟器

赵俊侠
2023-03-14
问题内容

我已经安装了Jenkins,并配置了在构建过程中运行模拟器的构建作业。但是,当我执行作业时,出现错误消息,表明jenkins用户没有运行kvm的权限。我该如何解决。

$ android list target
[android] Using Android SDK: /opt/android/sdk
$ adb start-server
* daemon not running. starting it now on port 5973 *
* daemon started successfully *
$ adb start-server
[android] Starting Android emulator
[android] Erasing existing emulator data...
$ emulator -ports 5971,5972 -prop persist.sys.language=en -prop persist.sys.country=US -avd hudson_en-US_160_1024x768_android-15_x86 -no-snapshot-load -no-snapshot-save -wipe-data
emulator: ERROR: x86 emulation currently requires hardware acceleration!
Please ensure KVM is properly installed and usable.
CPU acceleration status: This user doesn't have permissions to use KVM (/dev/kvm).
[android] Emulator did not appear to start; giving up
$ adb disconnect localhost:5972
[android] Stopping Android emulator
$ adb kill-server

权限

$ ls -l /dev/kvm
crw-rw----+ 1 root root 10, 232 May  6 13:46 /dev/kvm

$ groups jenkins
jenkins : jenkins

问题答案:

我设法解决了这个问题。

  1. 安装Qemu-KVM和cpu-checker:
    sudo apt install qemu-kvm cpu-checker

  2. 检查KVM是否可用(以jenkins用户身份):
    $ kvm-ok
    INFO: /dev/kvm exists
    KVM acceleration can be used

  3. 创建组kvm并添加jenkins到该组:
    addgroup kvm
    usermod -a -G kvm jenkins

  4. 更改以下组的所有权/dev/kvm
    chgrp kvm /dev/kvm

  5. 创建udev规则:
    $ sudo nano /etc/udev/rules.d/60-qemu-kvm.rules
    KERNEL=="kvm", GROUP="kvm", MODE="0660"

  6. 重启



 类似资料:
  • 我得到以下错误 10/28 11:01:11:在Pixel 2 API 28上启动“Android”。 安装没有成功。 无法安装应用程序。 重试 以前我可以运行它。但突然间,它在Gradle Build中没有成功。我试图在我的手机上安装未签名的apk,但也失败了。 编辑1:我试着运行另一个项目。发生了同样的错误。所以问题不是基于项目的。它发生在整个Android Studio。

  • 本文向大家介绍jenkins 远程构建Android的过程详解,包括了jenkins 远程构建Android的过程详解的使用技巧和注意事项,需要的朋友参考一下 由于企业的需求,需要做一个网站开分享每个版本的Android的app,所以需要使用的工具如下:   Jenkins平台,远程编译环境服务器一台,web服务器一台,根据自己的选择,可以搭配自己的资源,废话少说,直奔主题   1. Jenkin

  • 我刚刚安装了Android studio,并尝试将其进行测试运行。当我尝试运行我的应用程序时,我得到以下错误消息 有没有人知道怎么解决这个问题????

  • 每当我开始或运行我的项目时,gradle build运行从未停止,我尝试创建新的项目,但没有任何事情发生。有些项目工作得很好,但有些不是,而且永远在梯度构建运行中。而且,每当我打开项目时,这个cmd appt.exe文件就会打开。

  • 是否有方法运行Android模拟器上提供的示例Geofence应用程序:http://developer.Android.com/training/location/geofencing.html 应用程序在启动时关闭,我在Logcat上得到以下错误消息:

  • 问题内容: 我有一个Maven项目,并且我不想更改POM,以便在构建项目(清洁+安装)时,在编译部分之后,将开始一组量角器测试(打开selenium并做几件事),并且只有如果测试通过,则构建本身通过。 我似乎找不到能给我这种功能的东西。有可能吗?如果可以,该如何使用?我们目前正在使用“ com.github.eirslett” maven插件进行构建,我想知道是否可以在该插件中添加量角器测试作为一