Xcode 6 找不到模拟器设备并超时



我已经提交了一个雷达,因为我相信这是一个错误,但我想知道是否有人能够在此期间提出解决方法。

在安装了 Xcode 的计算机上定期成功运行测试数周后,测试将不再执行。Xcode似乎无法再找到模拟器或其设备。从 Xcode 的"设备"菜单中删除模拟器设备(以及 ~/Library/Developer/CoreSimulator/Devices 中的所有目录)并重新添加它们无济于事。

模拟器不会启动,Xcode 中也不会输出任何错误消息。在 Console.app 中打开system.log会显示以下消息:

Nov 21 16:21:29 jenkinss-mini.home xcodebuild[51853]: [MT] DVTAssertions: Warning in /SourceCache/IDEFrameworks/IDEFrameworks-6604/IDEFoundation/Testing/OCUnit/IDEOCUnitTestRunner.m:388
    Details:  No baseline file matching runDestinationRecord: {
        localComputer =     {
            busSpeedInMHz = 100;
            cpuCount = 1;
            cpuKind = "Intel Core i5";
            cpuSpeedInMHz = 2500;
            logicalCPUCoresPerPackage = 4;
            modelCode = "Macmini6,1";
            physicalCPUCoresPerPackage = 2;
            platformIdentifier = "com.apple.platform.macosx";
        };
        targetArchitecture = i386;
        targetDevice =     {
            modelCode = "iPhone5,1";
            platformIdentifier = "com.apple.platform.iphonesimulator";
        };
    }
    Object:   <Xcode3OCUnitTestRunner: 0x7fa0d6b61550>
    Method:   -_scheduledTestArgumentsOperationForBuildParameters:launchParameters:runDestination:workspace:testRunIdentifier:testRunIdentifiers:actionResultsBundleWithBaselineOverridesFilePath:error:completionBlock:
    Thread:   <NSThread: 0x7fa0d0514030>{name = (null), num = 1}
    Please file a bug at http://bugreport.apple.com with this warning message and any useful information you can provide.

不建议删除 ~/Library/Developer/CoreSimulator/Devices 中的设备,因为您可能会在 CoreSimulatorService 运行时从 CoreSimulatorService 下删除状态。 我建议您通过执行以下操作来"清理":

  1. 退出Xcode,iOS模拟器,仪器以及使用SIM卡的任何其他内容
  2. 终止服务:killall -9 com.apple.CoreSimulator.CoreSimulatorService
  3. 删除状态:rm -rf ~/Library/*/CoreSimulator

这应该会让你回到香草状态。

如果这不能完全解决您的问题,请在重现问题后使用 ~/Library/Logs/CoreSimulator/CoreSimulator.log 更新您的问题。 请注意,应首先启用调试日志记录:

defaults write com.apple.iphonesimulator DebugLogging -bool YES
defaults write com.apple.CoreSimulator DebugLogging -bool YES

最新更新