打开Storyboard时出现Xcode崩溃

时间:2016-01-03 16:36:16

标签: ios xcode uistoryboard

为了支持从iOS 7到iOS 9的iOS,我安装了Xcode 6和7。 然后我在Xcode 7上为iPhone创建了一个项目。 我在Xcode 6上打开它以在iPhone模拟器7上进行测试。

但是当我点击Storyboard文件时,Xcode 6崩溃了。

我该如何解决? 或者还有另一种方式来支持iOS版本?

错误消息

Process:               Xcode [9928]
Path:                  /Applications/Xcode 6.app/Contents/MacOS/Xcode
Identifier:            com.apple.dt.Xcode
Version:               6.4 (7720)
Build Info:            IDEFrameworks-7720000000000000~8
Code Type:             X86-64 (Native)
Parent Process:        ??? [1]
Responsible:           Xcode [9928]
User ID:               501

Date/Time:             2016-01-04 01:15:21.068 +0900
OS Version:            Mac OS X 10.10.5 (14F1509)
Report Version:        11
Anonymous UUID:        F02C76F0-B69A-FE68-DD89-9946A7C82C03

Sleep/Wake UUID:       2BF55735-0241-43B3-A731-49B6D645DC4F

Time Awake Since Boot: 53000 seconds
Time Since Wake:       550 seconds

Crashed Thread:        0  Dispatch queue: com.apple.main-thread

Exception Type:        EXC_CRASH (SIGABRT)
Exception Codes:       0x0000000000000000, 0x0000000000000000

Application Specific Information:
ProductBuildVersion: 6E35b
ASSERTION FAILURE in /SourceCache/IDEInterfaceBuilderCocoaTouch/IDEInterfaceBuilderCocoaTouch-7703/InterfaceBuilder/Utilities/IBObjectMarshalling.m:45
Details:  Failed to launch Interface Builder Cocoa Touch Tool: Error Domain=com.apple.InterfaceBuilder Code=-1 "Encountered an error communicating with Interface Builder WatchKit Tool." UserInfo=0x7fb9b3128d40 {NSUnderlyingError=0x7fb9ac00c620 "Failed to communicate with Interface Builder", NSLocalizedDescription=Encountered an error communicating with Interface Builder WatchKit Tool., NSLocalizedRecoverySuggestion=Please check Console.app for crash reports for "Interface Builder WatchKit Tool" for further information., NSLocalizedFailureReason=Interface Builder WatchKit Tool (10069) failed to launch and exited with status (null), signal 5.



Dyld Error Message:
  Library not loaded: /System/Library/PrivateFrameworks/PepperUICore.framework/PepperUICore
  Referenced from: /Applications/Xcode 6.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Xcode/Overlays/Interface Builder WatchKit Tool
  Reason: image not found


Application Specific Information:
dyld: launch, loading dependent libraries
DYLD_FRAMEWORK_PATH=/Applications/Xcode 6.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/Library/Xcode/Overlays
DYLD_LIBRARY_PATH=
DYLD_FALLBACK_LIBRARY_PATH=
DYLD_ROOT_PATH=/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 9.0.simruntime/Contents/Resources/RuntimeRoot
}

3 个答案:

答案 0 :(得分:6)

原因是Xcode 6和7之间存在冲突。 Apple在Xcode 7的发行说明中公布了它。

我按照步骤操作,错误得到解决。

"从Xcode的下载首选项安装iOS 9.0 Simulator Runtime会导致Xcode 6中的Interface Builder安装在同一台机器上以停止运行。 当切换到Xcode 6并将其移回Xcode 7时,要么避免安装iOS 9.0 Simulator Runtime,要么将/ Library / Developer / CoreSimulator / Profiles / Runtimes / iOS \ 9.0.simruntime移动到备份位置。(23230951)"

https://developer.apple.com/library/watchos/releasenotes/DeveloperTools/RN-Xcode/Chapters/xc7_release_notes.html

答案 1 :(得分:1)

遇到同样的问题,经过一些调查后,似乎在Xcode更新或Mac OS更新后,系统库中删除了2个私有框架, PepperUICore.framework和SockPuppetGizmo.framework 。但您仍然可以在Xcode 6模拟器SDK中找到它们。

确保在/ System / Library / PrivateFramework /中找不到这两个框架。然后使用下面的命令行(将Xcode 6应用程序路径替换为您的路径)将私有框架从Xcode 6模拟器SDK复制到 / System / Library / PrivateFramework /

sudo cp -r /Applications/Xcode6.4.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/PepperUICore.framework /System/Library/PrivateFrameworks/

sudo cp -r /Applications/Xcode6.4.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/System/Library/PrivateFrameworks/SockPuppetGizmo.framework /System/Library/PrivateFrameworks/

现在用Xcode 6打开.xib或.storyboard,应该没问题。

答案 2 :(得分:0)

尝试更改"打开"故事板检查器中的属性使其与Xcode 6或6.3兼容。

特别是这个下拉/弹出菜单项:

enter image description here

但是像Kaizoku的评论一样,如果其他内容被破坏(例如,如果您的应用程序期望仅在iOS 9中存在的符号或功能),请不要感到惊讶。

可能更好的是set the minimum deployment version for your app(例如iOS 7)和try it out in an iOS 7 or iOS 8 simulator which you can download with Xcode 7