我刚刚将构建服务器的Android Studio更新为2.3.1,并且模拟器停止为Jenkin的Android Emulator插件工作。该插件调用以下命令:
emulator -engine classic -ports 5754,5755 -report-console tcp:5866,max=60 -avd Nexus_4_API_23 -no-snapshot-load -no-snapshot-save -no-audio -gpu off
这曾经一直有效但现在它突然返回并出现以下错误:
PANIC:缺少' x86'的模拟器引擎程序CPU。
Android SDK Manager报告的模拟器版本为26.0.0。通过Android Studio打开模拟器工作正常,所以我稍微使用了命令,结果是-engine经典标志导致了这一点,否则模拟器启动没有问题。
由于Jenkins Emulator插件取决于-engine经典标志,我无法删除它。有没有人经历过这个并找到了解决方案?
答案 0 :(得分:1)
我认为是由于android sdk文件夹中有许多名为“ emulator”的文件引起的。 要从终端窗口调用仿真器, 您的bash文件应正确创建,模拟器文件夹的路径应添加到bash文件中,并确保其位于平台工具和工具路径之前。这是因为这些文件夹中也有模拟器文件。 bash文件应为->
nano ~/.bash_profile
export ANDROID_HOME=Users/YOUR_MAC/Library/Android/sdk
export PATH=$ANDROID_HOME/emulator:$PATH
export PATH=$ANDROID_HOME/platform-tools:$PATH
export PATH=$ANDROID_HOME/tools:$PATH
export PATH=$ANDROID_HOME/tools/bin:$PATH
完成此操作后,您需要做的只是通过终端通过->导航到“仿真器”文件夹 cd用户/ YOUR_MAC /库/ Android / sdk /模拟器
现在要调用通过android studio创建的模拟器,只需输入此命令即可。/emulator@NexusDemo 您的仿真器名称后应带有@。
答案 1 :(得分:0)
我现在通过降级Android SDK工具修复了它,如How to downgrade my SDK Version?
所示目前版本26似乎有问题,或者他们禁用了经典引擎或其他东西。虽然我在发行说明中找不到任何内容。
我最近回到了这个问题,为我修复了以下jenkins问题的提示: https://issues.jenkins-ci.org/browse/JENKINS-43557
具体做法是:
- 添加到全局Jenkins环境变量: LD_LIBRARY_PATH = $ LD_LIBRARY_PATH:$ ANDROID_HOME /工具/ lib中
- 添加到android-emulator-plugin-> Advanced->模拟器选项: -engine auto
醇>