4

当我使用选项 create emulator 在 Jenkins 上运行测试时,我遇到了这个问题:

[android] 无法创建 Android 模拟器:无法运行 AVD 创建命令

当我以现有模拟器为目标时,我遇到了这个问题:

FATAL: C:\Windows\system32\config\systemprofile.android\avd\AVD_2.2.ini (系统找不到指定的路径) java.io.FileNotFoundException: C:\Windows\system32\config\systemprofile.android\ avd\AVD_2.2.ini(系统找不到指定的路径)在 java.io.FileInputStream.(Unknown Source) at java.io.FileInputStream.open(Native Method) at java.io.FileReader.(Unknown Source)在 hudson.plugins.android_emulator.util.Utils.parseConfigFile(Utils.java:436) 在 hudson.plugins.android_emulator.SdkInstaller$2.call(SdkInstaller.java:331) 在 hudson.plugins.android_emulator.SdkInstaller$2.call(SdkInstaller .java:328) 在 hudson.remoting.LocalChannel.call(LocalChannel.java:45) 在 hudson.plugins.android_emulator.SdkInstaller.getPlatformFromExistingEmulator(SdkInstaller.java:328) 在 hudson.plugins.android_emulator。SdkInstaller.getPlatformForEmulator(SdkInstaller.java:312) 在 hudson.plugins.android_emulator.SdkInstaller.installDependencies(SdkInstaller.java:174) 在 hudson.plugins.android_emulator.AndroidEmulator.setUp(AndroidEmulator.java:247) 在 hudson.model.Build $BuildExecution.doRun(Build.java:154) 在 hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:499) 在 hudson.model.Run.execute(Run.java:1488) 在 hudson.model.FreeStyleBuild。在 hudson.model.ResourceController.execute(ResourceController.java:88) 在 hudson.model.Executor.run(Executor.java:236) 运行(FreeStyleBuild.java:46)model.Build$BuildExecution.doRun(Build.java:154) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:499) at hudson.model.Run.execute(Run.java:1488) at hudson.model .FreeStyleBuild.run(FreeStyleBuild.java:46) 在 hudson.model.ResourceController.execute(ResourceController.java:88) 在 hudson.model.Executor.run(Executor.java:236)model.Build$BuildExecution.doRun(Build.java:154) at hudson.model.AbstractBuild$AbstractBuildExecution.run(AbstractBuild.java:499) at hudson.model.Run.execute(Run.java:1488) at hudson.model .FreeStyleBuild.run(FreeStyleBuild.java:46) 在 hudson.model.ResourceController.execute(ResourceController.java:88) 在 hudson.model.Executor.run(Executor.java:236)

我有这个文件。当我在 jenkins 上运行手动模拟器和测试时,它可以工作。

4

1 回答 1

9

第二种情况显示的路径表明您可能将 Jenkins 作为系统服务运行。

在这种情况下,您可以尝试Android Emulator Plugin wiki 页面上“已知问题”下列出的解决方法:

在 Windows 服务中作为“本地系统”
运行 如果 Jenkins 作为 Windows 服务运行,则无法使用“本地系统”帐户生成和运行新的 AVD(参见问题 #7355)。

解决方法:将 Jenkins 服务配置为“以”真实用户身份“运行”


如果这不能解决问题,您能否告诉我们手动创建时将 AVD 放置在哪个目录中?emulator您可以通过运行-verbose标志来找出答案。在前几行中,您应该看到如下内容:

模拟器:Android 虚拟设备文件位于:c:\users\foo\.android\avd\emu_4.0.3.ini

于 2012-07-09T09:16:23.287 回答