【问题标题】:Build creation issue for iOS10 by Xcode8 on JenkinsXcode8 在 Jenkins 上为 iOS10 构建创建问题
【发布时间】:2016-09-30 09:38:57
【问题描述】:

** 内部错误:未捕获的异常 **

未捕获的异常:加载的 com.apple.CoreSimulator.CoreSimulatorService 作业不符合我们的预期:

堆栈: 0 0x00007fff95278aca __exceptionPreprocess(在 CoreFoundation 中) 1 0x00007fff95c8273c objc_exception_throw(在 libobjc.A.dylib 中) 2 0x00007fff952788ba +[NSException raise:format:arguments:](在 CoreFoundation 中) 3 0x00007fff924d288c -[NSAssertionHandler handleFailureInMethod:object:file:lineNumber:description:](在 Foundation 中)

【问题讨论】:

    标签: jenkins ios10 xcode8


    【解决方案1】:

    此问题表明加载的 CoreSimulatorService 作业与预期不符。在启动使用模拟器的任何进程(Xcode、Simulator、simctl、xcodebuild、Instruments 等)时,系统首先检查加载的 CoreSimulatorService 是否是该 Xcode 版本的正确进程。如果不是,它会卸载作业并加载正确的作业。这样做后,它会重新验证连接,如果连接仍然不符合预期,则会发出此错误。

    这通常发生在同一用户帐户同时使用多个 Xcode 版本时。使用一个,完成,使用另一个,完成,再使用另一个等完全没问题。同时运行两个不同的副本是不行的。

    【讨论】:

    • This usually happens when the same user account is using multiple versions of Xcode at the same time. 谢谢这是解决我问题的提示。我们的 CI 服务器上有多个 XCode 版本。 Open 正在打开 Xcode 8,尽管我们正在尝试使用 Xcode 7 构建。我将其更改为 open -a /Applications/Xcode_$XCODE_VERSION.app/ "platforms/ios/App.xcodeproj",因此特定版本的 Xcode 正在构建应用程序。
    【解决方案2】:

    此错误通常是由于在 com.apple.CoreSimulator.CoreSimulatorService 运行时更新或切换您的 Xcode 版本引起的。 Xcode(包括xcodebuild)在为 iOS/tvOS/watchOS 构建时使用模拟器来处理 XIB/Storyboard 文件,因此即使您不启动 Simulator.app,只需运行构建即可启动 CoreSimulator。

    此检查确保由 launchd 启动的 XPC 服务与库匹配。在您的情况下,它失败了,表明 launchd 启动了旧版本的 CoreSimulator。

    如果您的 CI 系统正在重复使用安装了多个 Xcode 版本的实例,您需要确保用户会话完全注销并且在开始下一次构建之前没有其他 XPC 服务实例正在运行。

    如果您尝试在同一构建中的 Xcode 版本之间切换,您需要在 xcode-select 之后将脚本插入到 sudo killall -9 com.apple.CoreSimulator.CoreSimulatorService 2> /dev/null。确保 Xcode、Simulator.app 和 Console.app 都已关闭,否则它们尝试建立 XPC 连接只会使 launchd 立即重新启动作业。

    【讨论】:

    • 用户在切换Xcode版本时不需要注销。启动 Xcode、Simulator、xcodebuild 等将导致新进程卸载旧的 CoreSimulatorService,如果它不匹配并加载它自己的。此错误消息表明即使在这样做之后,作业也不匹配。这通常表明启动时存在竞争。多个不同的 Xcode 正在同时启动。这不是受支持的配置。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-02-10
    • 1970-01-01
    • 1970-01-01
    • 2018-06-19
    • 2014-08-10
    • 1970-01-01
    相关资源
    最近更新 更多