如果我在连接Tunnelblick(VPN)之前启动它,Xcode工作正常。但是当我使用Tunnelblick连接启动Xcode时崩溃了。有人有这个问题并找到了解决方案吗?
这是应用崩溃报告:
Application Specific Information:
objc_msgSend() selector name: count
ProductBuildVersion: 4A304a
UNCAUGHT EXCEPTION (NSInvalidArgumentException): -[NSCFArray length]: unrecognized selector sent to instance 0x200d3e540
UserInfo: (null)
Hints: None
Backtrace:
0 0x00007fff88da9796 __exceptionPreprocess (in CoreFoundation)
1 0x00007fff838b10f3 objc_exception_throw (in libobjc.A.dylib)
2 0x00007fff88e03110 +[NSObject(NSObject) doesNotRecognizeSelector:] (in CoreFoundation)
3 0x00007fff88d7b91f ___forwarding___ (in CoreFoundation)
4 0x00007fff88d77a68 _CF_forwarding_prep_0 (in CoreFoundation)
5 0x00007fff88d09228 CFStringFindWithOptionsAndLocale (in CoreFoundation)
6 0x00007fff88d091cc CFStringFindWithOptions (in CoreFoundation)
7 0x00007fff88d091a0 CFStringHasSuffix (in CoreFoundation)
8 0x00007fff8161f19e +[NSHost currentHost] (in Foundation)
9 0x0000000118499bf7 -[XCDistributedBuildLocalHost _allocateHost] (in DevToolsCore)
10 0x0000000118496293 -[_XCDistributedBuildHostInfoTask receivedStdoutObjectInBackground:] (in DevToolsCore)
11 0x0000000118435ede -[XCPosixTaskBackgroundReaderThread backgroundThread:] (in DevToolsCore)
12 0x00007fff815cbf29 __NSThread__main__ (in Foundation)
13 0x00007fff812dd4f6 _pthread_start (in libSystem.B.dylib)
14 0x00007fff812dd3a9 thread_start (in libSystem.B.dylib)
答案 0 :(得分:0)
看起来Xcode正试图访问网络上的某些内容,并且当您通过VPN连接到Internet时无法正确处理结果。
对XCDistributedBuildLocalHost的引用可能意味着Xcode正在尝试对分布式构建执行某些操作 - 可能尝试注册为可用的构建工作者,或者可能尝试获取可用构建工作者的列表,或者类似的东西。
您可能想尝试取消选中Xcode的分布式构建首选项(如果已选中)。
顺便说一句,Tunnelblick 3.1.1存在安全漏洞。请参阅2011-01-27 Tunnelblick Vulnerability FAQ
答案 1 :(得分:0)
我在Lexmark打印机驱动程序二进制文件中遇到了类似的崩溃,我在此blog post中对此进行了描述。
我确定根本原因是/etc/resolv.conf的“搜索”参数中列出了多个域名。
您使用Tunnelblick可能遇到此问题的原因是,您的config.ovpn中可能有一个“dhcp-option DOMAIN”行,它指定了多个域。在这种情况下,如果您允许Tunnelblick设置DNS(您发现禁用会“阻止”崩溃),那么NSHost在调用CFString时会出现错误。