2011-09-29 33 views
3

每隔一段時間,XCode中加重問題的解決方案就是打開Product→Clean,這似乎清除了一些緩存並且問題消失。什麼時候以及爲什麼要清理XCode中的版本

但是它究竟在幹什麼?更重要的是,我應該怎麼做?在處理核心數據時似乎更經常需要,但我並沒有真正追蹤它。

作爲一個側面問題,爲什麼這是必要的? XCode似乎在背景中做了很多東西(自動保存,自動編譯等)。爲什麼這不僅僅發生在後臺?

回答

0

這是因爲當你使用大量文件和對象進行非常非常大的項目時,會有很大的不同。想象一下,你需要一個小時來重新編譯整個項目,所以你在做之前會先考慮一下。但在我們的世界裏,這是一項快速的任務。使用make程序。所以,它只編譯改變的內容。

我可以列出相同的情況下,你需要做的是:

  • 始終將創建爲App Store中應用程序。這是安全的事情。
  • 總是使用XCode快照。當我恢復項目並構建應用程序時,我的時間很糟糕。 XCode使用了舊的編譯文件,並且很多時間都沒有搜索到。
  • 也許當你用git恢復舊代碼時。與快照相同的想法
  • 刪除或重命名項目中的文件時。它不會刪除已編譯的文件,所以程序可以工作,但是如果您重新編譯,將會看到錯誤。
  • 當你看到有時構建有奇怪的行爲。或者只確定XCode只使用您的較新文件。

我不記得確切,但我已經看到構建使用舊的#defines。重建可以使你的程序更安全。但不需要一直這樣做。

+0

但究竟是什麼「奇怪的行爲」。我遇到了錯誤(例如鍵值兼容),這可能是因爲我的代碼中存在真正的錯誤,或者只是不潔淨的構建。我試圖弄清楚如何區分這兩者,而不用把頭撞到桌子上幾個小時,直到我記得清洗。 – Praveen

0

我幾乎可以肯定,XCode失去了對事物的追蹤,有時它不會重新編譯(或鏈接,不確定)所有事情都是需要的。我不得不求助於清潔,並且最經常地構建所有應用程序。也許這只是我,但我懷疑它...... XCode是我與之合作的大多數錯誤的IDE

相關問題