2010-07-29 57 views
25

我下載了一個由Apple員工開發的項目(他在斯坦福大學教授iPhone應用程序開發課程)。奇怪的是,框架是紅色的。Xcode中的框架爲'紅色'

http://img.skitch.com/20100730-kcjun96mp2pxnpg7w3x6njw57.jpg

我試圖找到coreGraphics.framework和UIKit.framework再次添加他們,但我無法找到他們要麼。

泰穆爾

+0

我也這麼做。由於一切都還在繼續,所以我沒有試圖去追查發生的事情。 – kubi 2010-07-29 17:04:06

+0

@ kubi好可怕,不是它,它在你的腦海後面,你的項目可能會在晚些時候崩潰和腐敗。笏你說? – 2010-07-29 17:10:11

+0

重新獲得賞金。 。 。該框架是來自子項目的框架,而不是系統框架。 。 。 – 2017-04-02 22:24:15

回答

27

紅色文本表示實際文件不在項目對其有效的路徑中。

獲取有關框架的信息,並在General選項卡下查找。第一部分顯示框架包本身的名稱和路徑。系統提供的框架出現問題的最常見原因是路徑類型已被更改爲破壞路徑的東西。默認設置是Relative to Current SDK。改變路徑,直到你得到一個導致實際框架的路徑。

如果您在自定義位置安裝了開發人員工具,則更有可能遇到此問題。如果您從具有非標準設置的人員複製項目,您也可以遇到它。

+0

你好。我在xcode 4.6.1中發現了一個類似的問題,不知道該怎麼做。請幫幫我。 – 2013-06-17 12:33:39

+0

在Xcode 9中不起作用 – MikeG 2018-01-16 18:45:20

2

@Taimur哈姆扎 - 它發生(紅色)由於以下原因中的任何一個,

  1. 您下載的項目可能會錯過一些必要的文件

  2. 之前運行應用程序第一次。

    所以,首先你必須找到上述原因,並嘗試通過從另一個正在運行的項目中複製框架並將其粘貼到項目中來解決。

+0

+1這個答案不值得一個複選標記。只是表達不佳而沒有真正的不正確。 – TechZen 2010-07-29 18:12:57

+0

對不起,我的意思是不投票而不投票。 – TechZen 2010-07-29 22:01:22

7

找到一種方法來自動地解決這個問題:

  • 右鍵點擊你的主要Xcode項目文件(藍色頂部alt text
  • 獲取信息,
  • '常規' 選項卡,
  • 在底部,將'所有配置的基礎SDK'設置爲所需的。

完成!

+0

這節省了我一些時間。 :P – jarryd 2011-01-21 21:57:11

+0

我得到67個錯誤,如果我這樣做,並且所有frameWorks都有鎖定符號。 PLZ嘗試解決我的問題.... – 2012-03-09 13:03:52

+16

當您右鍵單擊Xco​​de 4.5中的項目圖標時,沒有獲取信息。 – Snowcrash 2012-11-27 16:12:27

1

我以前遇到過這個問題。我通過從我朋友的Mac中複製丟失的(紅色)框架來複制它,然後將其複製到Framework文件夾。

這是我的框架文件夾的路徑:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS6.1.sdk/System/Library/Frameworks 

您可能需要更改路徑取決於您的系統或您的SDK版本上。

1

很可能您決定刪除一些您不需要的框架,並刪除它們,但選擇了「移至廢紙簍」而不是「移除參考」。

問題是這個框架沒有包含在你的項目文件夾中。當它可以被多個項目使用時,它位於System文件夾中。因此,您不僅會導致當前項目不能編譯,還會導致計算機上的所有項目。

如果您還剩下任何框架,您可以右鍵單擊它們並選中「在Finder中顯示」。你可以在垃圾桶中找到你刪除的框架(如果它沒有被擦掉),並將它們放回到系統的Frameworks文件夾中。

如果找不到這個文件夾,對我來說就是在這裏: /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.0.sdk/System/Library

當然,當您進入Applications文件夾並選擇Xcode時,您必須右鍵單擊它並單擊「顯示包裝內容」。

如果你甚至從垃圾桶中刪除你的框架,比我想你可以重新安裝的Xcode ...

14

你建設一個模擬器或設備?

嘗試爲設備構建。

+0

這對我有用。非常感謝。 – 2015-09-01 14:43:36

+0

爲我工作。我正在爲「iPhone 6s」建設,一旦我切換到「通用iOS設備」,它修復了它們。 – jakecraige 2016-06-24 20:13:52