2012-08-02 59 views
39

我知道這是一個xcode警告/錯誤,但是,當我嘗試從命令行運行gitk --all時,會發生這種情況。CFURLCopyResourcePropertyForKey失敗,因爲它通過了這個沒有方案的URL:

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的。任何建議爲什麼發生這種情況

+5

升級到Mountain Lion後(以及安裝XQuartz X11),我看到了同樣的錯誤。 Lion在使用Apple的X11時沒有發生。 – andy 2012-08-05 19:38:13

+0

這裏同樣的問題在ML的全新安裝上。 – Alec 2012-08-08 19:47:58

+0

升級到Mountain Lion並安裝XQuartz後,此處同樣存在問題。 – Julio 2012-08-13 15:18:46

回答

0

別名GK = 'gitk --all 2>的/ dev/null的&'(我是MAC)

我有它在〜/ .bash_login文件文件,並且它解決了它:d

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

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

我在這裏有同樣的問題。這是快速提示,直到有人回答這個解決方案。

+1

對於我們這些把別名放在'〜/ .bash_profile'或類似文件中,但不想退出/退回shell的人:運行'$。 〜/ .bash_profile'來激活 – Olaf 2012-08-23 11:54:57

+0

是'。 〜/ .bash_profile'優於'$ source〜/ .bash_profile'? – 2012-09-05 00:57:29

+20

*注意:這只是隱藏了錯誤信息** 別名只是將gitk的stderr輸出(文件設備2)重定向到/ dev/null,從而掩蓋了gitk永久生成的所有錯誤。可能不是什麼大不了的,但如果你使用這個,你應該知道它在做什麼。 – SteveS 2012-09-12 19:00:27

5

我剛剛得到這個錯誤,並找到解決方案來解決它。

我試圖調用函數getResourceValue:forKey:錯誤:在我的項目和我的操作系統版本是10.7.5。

我使用+ URLWithString來初始化一個新的NSURL對象:並且在我用+ fileURLWithPath替換它之前發生了問題,現在沒關係。

具有不同功能的兩個對象之間的差異值是 /卷/數據/一個 文件://本地主機/卷/數據/一個/

蘋果statemented即低於約NSURL類,

處理對象創建失敗 如果傳遞的路徑格式不正確,NSURL類無法創建新的NSURL對象;該路徑必須符合RFC 2396.不成功的案例的例子是包含空格字符和高位字符的字符串。如果創建NSURL對象失敗,則創建方法返回nil,您必須準備好處理它。如果您使用文件系統路徑創建NSURL對象,則應該使用fileURLWithPath:或initFileURLWithPath:來處理URL路徑和文件系統路徑之間的細微差別。如果您希望容忍格式不正確的路徑字符串,則需要使用Core Foundation框架提供的函數來清理字符串。

Error while using getResourceValue:forKey method in NSURL

+0

我喜歡你的答案。但實際上並沒有說如何解決這個問題。你有沒有黑客的gitk代碼?如果是這樣,怎麼樣? – formigarafa 2012-11-21 22:47:33

+0

對不起,我還沒有試過。 – Itachi 2012-11-24 10:15:43

8

如果你是MacPorts的用戶升級的Tcl/Tk到8.6.0:

$ sudo port install tcl tk 
3

在山獅10.8.2,我解決了這個問題,安裝/升級Tcl和Tk - 作爲TAIR提及。

釀造安裝TCL
釀造安裝TK

gitk的UI很可能會改變,但你可以調整,在〜/ .gitk。

+1

這個答案實際上解決了問題,而不是壓制錯誤。 – Kache 2013-03-28 17:58:18

+0

它也改變熱鍵,cmd-tab功能,鍵盤重複速度(可以固定)。我結束了恢復= \ – Kache 2013-03-28 23:08:38

+0

@Kache你能提供關於熱鍵和kbd-速度問題的更多細節,所以我嘗試用Macports重現這些問題。也無法獲得cmd-tab問題 - 是不是由OSX保留? – Tair 2013-03-31 17:44:10

7

用新版本的tcl-tk運行gitk似乎解決了這個問題(在Mac OS X 10.8.4中測試過)。如果你已經安裝了自制,下面應該工作:

  1. 在命令行中運行:brew install tcl-tk
  2. 然後將以下添加到您的.bashrc或者.bash_profile文件:alias gitk='"$(brew --prefix tcl-tk)/bin/wish" "$(which gitk)"'

重新啓動後終端,你應該能夠正常運行gitk而不會看到任何「CFURLCopyResourcePropertyForKey」錯誤。

+3

您可能需要運行'brew tap homebrew /如果你已經沒有這樣做,請在'brew install tcl-tk'之前使用'dupes'。 – champagniac 2013-09-20 15:56:07

+0

這打破了gitk的喜好部分,包括顏色,並且它也模糊了左下部分的文字字形 – Niloct 2013-12-05 15:25:15

1

本博客文章解決了我針對此問題:

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

長期和短期的它是gitk不解析的Git版本字符串正確自帶的Xcode,並令人作嘔的額外的細節。

所以要解決,你可以安裝一個乾淨版本號的git。

brew install git

您可能需要確保釀造的混帳的版本會被調用,通過改變順序目錄被搜查你的PATH(例如,我不得不/usr/bin之前加載/usr/bin/local)。或者,您可以將git別名到brew安裝的絕對路徑。

+0

使用自制軟件git似乎比使用Apple的git自制Tcl/Tk更好的解決方案(或者只是隱藏錯誤)。Upvoted。 – Rich 2015-08-03 09:13:12

相關問題