CFURLCopyResourcePropertyForKey失败,因为它传递了这个没有scheme的URL:

我知道这是一个xcode的警告/错误,但是,当我尝试从命令行运行gitk --all时,就会发生这种情况。

 YuFei-Zhus-MacBook-Pro:test phil88530$ gitk --all 2012-08-02 21:14:49.246 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme: 2012-08-02 21:14:49.252 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme: 2012-08-02 21:14:49.293 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme: 2012-08-02 21:14:49.295 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme: 2012-08-02 21:14:49.474 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme: 2012-08-02 21:14:49.476 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme: 2012-08-02 21:14:50.731 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme: 2012-08-02 21:14:50.734 Wish[33464:707] CFURLCopyResourcePropertyForKey failed because it was passed this URL which has no scheme: YuFei-Zhus-MacBook-Pro:test phil88530$ 

我刚刚更换了一个新磁盘,并重新安装了osx,并更新为山狮,安装了x11和xcode。 任何build议为什么发生这种情况

 $ alias gitk='gitk 2>/dev/null' 

我在这里有同样的问题。 这是快速提示,直到有人回答这个解决scheme。

如果你是MacPorts用户,升级tcl / tk到8.6.0:

 $ sudo port install tcl tk 

用新版本的tcl-tk运行gitk似乎可以解决这个问题(用Mac OS X 10.8.4testing)。 如果你已经安装了自制软件,下面的应该可以工作:

  1. 从命令行运行: brew install tcl-tk
  2. 然后将以下内容添加到.bashrc或.bash_profile中: alias gitk='"$(brew --prefix tcl-tk)/bin/wish" "$(which gitk)"'

重新启动terminal后,您应该能够正常运行gitk而不会看到任何“CFURLCopyResourcePropertyForKey”错误。

我刚刚得到这个错误,并find一个解决scheme来解决它。

我试图调用函数getResourceValue:forKey:错误:在我的项目和我的操作系统版本是10.7.5。

我使用+ URLWithString来初始化一个新的NSURL对象:之前我用+ fileURLWithPathreplace它之后出现了问题,现在就可以了。

具有不同function的两个对象之间的差值是/ Volumes / Data / a file:// localhost / Volumes / Data / a /

苹果已经在下面说了关于NSURL的类,

处理对象创build失败如果传递的path不正确,NSURL类将无法创build新的NSURL对象; 该path必须符合RFC 2396.不成功的情况下的例子是包含空格字符和高位字符的string。 如果创build一个NSURL对象失败,创build方法返回nil,你必须准备处理。 如果使用文件系统path创buildNSURL对象,则应该使用fileURLWithPath:或initFileURLWithPath:来处理URLpath和文件系统path之间的细微差别。 如果您希望容忍格式错误的pathstring,则需要使用Core Foundation框架提供的函数来清理string。

在NSURL中使用getResourceValue:forKey方法时出错

在Mountain Lion 10.8.2上,我解决了这个问题,安装/升级tcl和tk – 就像tair提到的那样。

brew安装tcl
brew安装tk

gitk的用户界面可能会改变,但你可以调整〜/ .gitk。

这篇博文解决了我的问题:

http://blog.jasonsemko.com/post/51668282398/easy-fix-for-cfurlcopyresourcepropertyforkey-failed

gitk长短不是正确parsing了xcode附带的git的版本string,而是在额外的细节上呕吐。

所以要解决,你可以安装一个干净的版本号的git。

brew install git

你可能需要通过改变在PATHsearch的命令目录(例如,我必须在/usr/bin/local之前加载/usr/bin/local )来确保brew的git版本被调用。 或者,您可以将git别名到由brew安装的绝对path。

别名gk ='gitk –all 2> / dev / null&'(我在mac上)

我已经在〜/ .bash_login文件中解决了这个问题:D

你也可以把它放在.bashrc文件中