我正在尝试设置Jenkins UI测试,但在运行模拟器命令时失败,该命令在一个android sdk工具更新中从{$ANDROID_SDK}/tools/emulator
移动到{$ANDROID_SDK}/emulator/emulator
。
我不知道为什么:Android Emulator插件是3.0版本,应该已经使用了模拟器/模拟器路径。Jenkins版本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 Emulator插件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
对于早期的SDK,它看起来像这样:
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(,对于命令行工具来说显然不是。
我会发布一个错误报告,如果我能找到解决方法,我会在这里更新。