2017-09-13 136 views
15

我有一個反應本機應用程序,只是注意到在我的project.pbxproj文件中的Recovered References XCode中添加了幾行。爲什麼在我的xcode項目文件中找到引用?

我不記得添加或刪除任何引用和恢復的引用顯示我通常使用的庫。我不願意檢查當地的git變化,但不知道這些變化是什麼。我應該放棄這些改變嗎?

有人可以解釋爲什麼可以添加這些行,如果我沒有自己添加或刪除這些包?這是否意味着某些引用被刪除以便以後恢復?我能想到的唯一的事情就是我運行了反應原生鏈接,是否會做出這些改變?

這行加入

E3C5B1001F6966D2006296E1 /* Recovered References */, 

這整款新:

E3C5B1001F6966D2006296E1 /* Recovered References */ = { 
      isa = PBXGroup; 
      children = (
       E602D61E379048BF92DC0C6D /* libRNDeviceInfo.a */, 
       DEE39860F1B042208F193884 /* libRNVectorIcons.a */, 
       C193FEFE9F3B45388016E921 /* libRNShare.a */, 
       58B3A26CAB2543FB941C3D8D /* libRNFIRMessaging.a */, 
       0BFBA42D662C492EBC1957A0 /* libreact-native-branch.a */, 
       4BC248DD95524DE091A41CEC /* libCodePush.a */, 
       6DB0E4FE64B34B68A29B262E /* libRNImagePicker.a */, 
       E1502CC537D94CF4A5711814 /* libRNAddCalendarEvent.a */, 
       065361D30B3F47D4A5101A1D /* libRNAccountKit.a */, 
      ); 
      name = "Recovered References"; 
      sourceTree = "<group>"; 
     }; 

回答

4

來源:發佈說明Xcode的9測試版2:

當打開一個項目時,Xcode中發現,如果將在 目標的任何生成文件項目代表文件的引用不屬於該項目目前的 組樹。任何這樣的引用將被添加到名爲「恢復的引用」的 文件組中,如果需要 ,將會創建該文件組。這些參考資料應根據情況在 項目中手動重組。一個有用的工具紅寶石 - (22924751)

+5

我將如何去做最後一句中寫的內容,即'這些參考文獻應該在適當的時候在項目中手動重組。 – Andru

+4

有人可以解釋如何做到這一點? – chetstone

0

如前所述gheni4,Xcode的9增加下由於某種原因,回收參考幾個* .a文件。通過刪除文件夾和除iOS之外的所有目標(iOS-Test,tvOS,tvOS-Test),它們不再自動創建,並且我可以最終構建而不會出錯。

+0

我試過了,它真的搞砸了。我刪除了我的iOS測試目標和恢復的引用文件夾,現在我的鏈接失敗,' 架構x86_64的未定義符號: 「_OBJC_CLASS _ $ _ Orientation」,引用來自: objc-class-ref AppDelegate.o 「_OBJC_CLASS _ $ _ CodePush 「,參考: objc-class-ref在AppDelegate.o'中,我不知道如何解決它。 – chetstone

+0

我設法通過從git恢復pbxproj文件進行恢復。 xcode再次添加了恢復的引用文件夾,但它似乎並沒有真正傷害任何東西。構建工作正常,我會忍受它的醜陋。 – chetstone

0

通過重命名文件,手動刪除在有關Recovered References退出Xcode的項目文件的一切,並運行synx固定它。當我再次打開它時,我可以建造,一切都很好。

相關問題