每次我尝试修改源代码时xcode崩溃

Chr*_*phe 5 crash xcode

我在OSX Mountain Lion 10.8.3上使用Xcode 4.6.1

今天早上我已将源代码从我的macbook air转移到我的iMac.

而现在,每次我尝试修改我的源代码时,XCode都会崩溃!

例如,如果我开始写这样的东西:[[anyclass

XCode将因此消息而崩溃:无法添加具有相同标识符的其他用户代码段,您只能覆盖系统代码段.

但是,如果我之前在文本编辑器中编写代码,然后如果我将其粘贴到XCode,它就可以工作!

我不明白......我已经清空了我的派生数据,清理了我的项目,清空了/ var/folders目录,重新启动了我的iMac ...

非常感谢您的帮助!

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

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

Application Specific Information:
ProductBuildVersion: 4H512
ASSERTION FAILURE in /SourceCache/IDECodeSnippetLibrary/IDECodeSnippetLibrary-2055/Source/IDECodeSnippetRepository.m:320
Details:  Cannot add another user snippet with the same identifier, you can only override system snippets.
Object:   <IDECodeSnippetRepository: 0x4050a98c0>
Method:   -addCodeSnippet:
Thread:   <NSThread: 0x40030a220>{name = (null), num = 1}
Hints:   None
Backtrace:
  0  0x000000010b681a2a -[IDEAssertionHandler handleFailureInMethod:object:fileName:lineNumber:messageFormat:arguments:] (in IDEKit)
  1  0x000000010a9255f4 _DVTAssertionFailureHandler (in DVTFoundation)
  2  0x000000010f40f975 -[IDECodeSnippetRepository addCodeSnippet:] (in IDECodeSnippetLibrary)
  3  0x000000010f40fcfb -[IDECodeSnippetRepository _loadUserCodeSnippets] (in IDECodeSnippetLibrary)
  4  0x000000010f40ee63 -[IDECodeSnippetRepository init] (in IDECodeSnippetLibrary)
  5  0x000000010f4150c4 __44+[IDECodeSnippetRepository sharedRepository]_block_invoke (in IDECodeSnippetLibrary)
  6  0x00007fff94b950b6 _dispatch_client_callout (in libdispatch.dylib)
  7  0x00007fff94b95041 dispatch_once_f (in libdispatch.dylib)
  8  0x000000010f40ecaa +[IDECodeSnippetRepository sharedRepository] (in IDECodeSnippetLibrary)
  9  0x000000010f416cbe __102+[IDECodeSnippetLibraryCompletionStrategy _generateCompletionsForScopes:language:platformNames:atBOL:]_block_invoke (in IDECodeSnippetLibrary)
Run Code Online (Sandbox Code Playgroud)

LJ *_*son 2

完全归功于Matthias,问题似乎与使用云源代码片段密切相关。我很久以前就这样做了,并且喜欢我的自定义代码片段在我的所有 Mac(工作中的 iMac 27"、rMBPro 和 MBAir)上的无缝可用性。这种代码片段的云存储还可以快速设置新的Mac. 昨天,我挖出了一个大约一年前用于开发的旧 MBAir,当我同步 Dropbox 时,肯定与我上次使用该 MBAir 后更改的代码片段存在一些冲突。Dropbox 附加到命名一小段文本,表明它是一个冲突的副本。不幸的是,Xcode 不会将其视为不同的文件,并认为它是重复的(这是不允许的)。

为了解决这个问题,我只是删除了有冲突的副本(它们都是旧版本),启动了 Xcode,没有出现任何问题。

如果有人对这种 Dropbox 片段同步感兴趣:

http://irockios.com/xcode-code-snippets-everywhere/