【问题标题】:Jenkins tries to launch tools/emulator instead of emulator/emulator (Android Emulator Plugin)Jenkins 尝试启动工具/模拟器而不是模拟器/模拟器(Android 模拟器插件)
【发布时间】:2020-07-13 13:05:47
【问题描述】:

我正在尝试设置 Jenkins UI 测试,但它在运行模拟器命令时失败,该命令已在 Android sdk 工具更新之一中从 {$ANDROID_SDK}/tools/emulator 移动到 {$ANDROID_SDK}/emulator/emulator

我不知道为什么:Android Emulator Plugin 是 3.0 版,应该已经使用了 emulator/emulator 路径。詹金斯版2.204.1

[android] Erasing existing emulator data...
$ /var/lib/android/tools/emulator -ports 5724,5725 -report-console tcp:5825,max=60 -avd pixel-2-api28 -wipe-data -no-window
FATAL: Cannot run program "/var/lib/android/tools/emulator": error=2, No such file or directory
java.io.IOException: error=2, No such file or directory

我错过了什么吗?

【问题讨论】:

标签: android jenkins jenkins-plugins android-emulator-plugin


【解决方案1】:

我正在回答我自己的问题 - 这是 Android Emulator Plugin 3.0 无法使用新的“仅限命令行工具”sdk 包的问题。我在我的构建服务器上使用了它,与完整的 Android Studio 包相比,它显然听起来像是构建服务器的选择。

问题在于插件如何检查工具版本,它在文件 {$ANDROID_SDK}/tools/source.properties 中查找名为 Pkg.Revision 的属性。

对于“命令行工具”,它看起来像这样:

Pkg.Revision=1.0
Pkg.Path=cmdline-tools;1.0
Pkg.Desc=Android SDK Command-line Tools

对于早期的 sdks,它看起来像这样:

Pkg.UserSrc=false
Pkg.Revision=26.1.1
Platform.MinPlatformToolsRev=20
Pkg.Dependencies=emulator
Pkg.Path=tools
Pkg.Desc=Android SDK Tools

插件检查版本是否高于 25.3 (AndroidSdk.java:161),对于命令行工具显然不是。

我会发布错误报告,如果找到解决方法,我会在此处更新。

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-07-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-04-29
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多