[英]Xcode crashes on launch
我正在為 iOS 開發一個應用程序,我在應用程序中沒有做任何更改。 但是在我的 Mac 重新啟動時,Xcode 每次都會崩潰。
不知道這是否重要,但我的聚光燈找不到任何應用程序,而且當我打開取景器並使用快捷方式 cmd + shift + HI 時,會看到一個白色窗口。
Xcode 不再啟動並拋出此錯誤:
Process: Xcode [1346]
Path: /Applications/Xcode.app/Contents/MacOS/Xcode
Identifier: com.apple.dt.Xcode
Version: 7.2 (9548)
Build Info: IDEFrameworks-9548000000000000~7
App Item ID: 497799835
App External ID: 814662604
Code Type: X86-64 (Native)
Parent Process: ??? [1]
Responsible: Xcode [1346]
Date/Time: 2015-12-24 11:01:44.753 +0100
OS Version: Mac OS X 10.11.2 (15C50)
Report Version: 11
Time Awake Since Boot: 4000 seconds
System Integrity Protection: enabled
Crashed Thread: 4 Dispatch queue: DVTFilePathEventWatcher - event queue
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
VM Regions Near 0:
-->
__TEXT 0000000108a5a000-0000000108a5e000 [ 16K] r-x/rwx SM=COW /Applications/Xcode.app/Contents/MacOS/Xcode
Application Specific Information:
ProductBuildVersion: 7C68
Thread 0:: Dispatch queue: DVTFilePath cache derivation lock for key DVTFilePathKey_SortedDirectoryContents
0 libobjc.A.dylib 0x00007fff8df27aa0 search_method_list(method_list_t const*, objc_selector*) + 2
1 libobjc.A.dylib 0x00007fff8df28d76 lookUpImpOrForward + 413
2 libobjc.A.dylib 0x00007fff8df22591 objc_msgSend + 209
3 com.apple.dt.DVTFoundation 0x0000000108a741f8 -[DVTFileSystemVNode addCachedEntriesFromDictionary:] + 215
4 com.apple.dt.DVTFoundation 0x0000000108bd2e2d __33-[DVTFilePath cachedValueForKey:]_block_invoke549 + 245
5 libdispatch.dylib 0x00007fff9fcbd33f _dispatch_client_callout + 8
6 libdispatch.dylib 0x00007fff9fcbe926 _dispatch_barrier_sync_f_invoke + 74
7 com.apple.dt.DVTFoundation 0x0000000108cd1005 DVTDispatchBarrierSync + 62
8 com.apple.dt.DVTFoundation 0x0000000108a69627 -[DVTDispatchLock performLockedBlock:] + 116
9 com.apple.dt.DVTFoundation 0x0000000108a715b0 -[DVTFilePath cachedValueForKey:] + 1802
10 com.apple.dt.DVTFoundation 0x0000000108a70afc -[DVTToolchainRegistry scanSearchPathAndRegisterToolchains:] + 563
11 com.apple.dt.IDEFoundation 0x00000001097d1a66 IDEInitialize + 655
12 com.apple.dt.IDEKit 0x0000000109ecdf7c -[IDEApplicationController applicationWillFinishLaunching:] + 708
13 com.apple.CoreFoundation 0x00007fffa18fa70c __CFNOTIFICATIONCENTER_IS_CALLING_OUT_TO_AN_OBSERVER__ + 12
14 com.apple.CoreFoundation 0x00007fffa18fa67f ___CFXRegistrationPost_block_invoke + 63
15 com.apple.CoreFoundation 0x00007fffa18f9d47 _CFXRegistrationPost + 407
16 com.apple.CoreFoundation 0x00007fffa18f9ab2 ___CFXNotificationPost_block_invoke + 50
17 com.apple.CoreFoundation 0x00007fffa18f3d42 -[_CFXNotificationRegistrar find:object:observer:enumerator:] + 1922
18 com.apple.CoreFoundation 0x00007fffa17e2145 _CFXNotificationPost + 693
19 com.apple.Foundation 0x00007fff9ef36921 -[NSNotificationCenter postNotificationName:object:userInfo:] + 66
20 com.apple.dt.DVTFoundation 0x0000000108c6cf55 -[NSNotificationCenter(DVTNSNotificationCenterAdditions) _dvt_postNotificationName:object:userInfo:] + 698
21 com.apple.AppKit 0x00007fff9db412c2 -[NSApplication finishLaunching] + 354
22 com.apple.dt.DVTKit 0x0000000109275f62 -[DVTApplication finishLaunching] + 149
23 com.apple.AppKit 0x00007fff9db40e05 -[NSApplication run] + 231
24 com.apple.AppKit 0x00007fff9dac3520 NSApplicationMain + 1176
25 libdyld.dylib 0x00007fff9a8605ad start + 1
由於權限沖突,這可能是一個問題嗎?
回答:
在我將我的 OSX-Drive 的權限更改為每個人都可以寫入和讀取之后。 一切正常。 但我知道這是一個臨時解決方案,所以我決定重新安裝我的 MAC,一切都很好。
通過在終端中運行此命令刪除~/Library/Developer/Xcode/DerivedData
:
rm -r ~/Library/Developer/XCode/DerivedData
如果這不起作用,此時根據給定的信息,我只能建議刪除並重新安裝 Xcode。
如果刪除 ~/Library/Developer/Xcode/DerivedData 對您不起作用,請嘗試以下步驟刪除 xcuserdata:
我有一個我選擇了一個非常大的文件,當它試圖解析它時 xcode 崩潰了。 然后當我以某種方式重新啟動它時,它設置為在啟動時加載該文件。 我看到的唯一方法是臨時重命名它在開始時嘗試加載的文件,這樣它就會加載為空。
我建議從您的.xcodeproj
和.xcworkspace
文件中刪除xcuserdata:
文件夾(使用顯示包內容打開),然后重試。
我希望這會奏效。
確保您的 SPM 包/依賴項沒有問題。
這只是另一個建議。 我剛剛花了一些時間在一個相當流行的開源項目上調試它。
當我更新 SPM 包時,我的 Xcode 第一次崩潰,所以我相當確定這是該包中未來提交之一的問題或 SPM 錯誤。 我訂閱了奧卡姆剃刀,所以我開始檢查提交中的更改。
一段時間后,我在 contents.xcplayground 中發現了一個重復的 Swift Playground 頁面聲明。 我刪除了那一行,推送了 PR,之后一切正常。
為了能夠重新打開項目:
project.pbxproj
。/* Begin XCRemoteSwiftPackageReference section */
和/* Begin XCSwiftPackageProductDependency section */
部分中刪除有問題的包。同樣,如果您的 Xcode 在打開項目時立即崩潰(並且您上次更新/自動更新了 SPM 包),請檢查您的包。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.