XCode 4 "Чистая" против "Чистая папка сборки"

При разработке каждого приложения вы приходите к определенному моменту, когда то, что вы видите в симуляторе, не соответствует тому, что, по вашему мнению, должно произойти. В основном это человеческие ошибки - или, по крайней мере, они есть в большинстве моих случаев;-) - но иногда XCode просто "потерял след", или так кажется. Я узнал, что Clean (Shift+Cmd+K) и Clean Build Folder… Опции меню (Option+Shift+Command+K) могут показать разницу между вашей ошибкой или Xcode.

Мой вопрос, хотя:

Что это Clean команда делать или не делать, что оставляет повод для Clean Build Folder… существовать? Когда я должен выбрать один над другим, почему бы просто не всегда чистить всю папку?

4 ответа

Решение

Clean… очищает папки для текущей выбранной цели.
Clean Build Folder… очищает папки для всех целей.

Если вы выберете Clean из меню "Продукт" XCode удалит файлы внутри каждой папки в папке "Сборка", если вы выберете Clean Build Folder это удалит всю папку Build.

После Clean команда:

введите описание изображения здесьПосле Clean Build Folder команда:

введите описание изображения здесь

Я думаю, что вы должны выбрать Clean Build Folder когда вы хотите создать двоичный файл, который хотите выпустить в AppStore, когда вы запутались в своем проекте или когда ваше приложение не работает по "неизвестной" причине, в противном случае используйте Clean,

Я надеюсь, что я ответил на ваш вопрос:D

Начиная с Xcode 10, "Чистый" фактически исчез. Apple говорит здесь:

"Новая система сборки использует поведение" чистая папка сборки ". Устаревшее" чистое "поведение не поддерживается".

Если вы выберете "Очистить", Xcode удалит файлы внутри каждой папки (например, "Продукты", "Промежуточные продукты") в папке "Сборка" для текущей цели. Файлы для других целей остаются.

Если вы выберете "Очистить папку сборки", Xcode удалит всю папку сборки, поэтому ничего не останется.

В большинстве случаев "Очистить" будет работать по "неизвестным" причинам, но вам все равно придется "Очистить папку сборки", потому что XCode не удалит файлы в папке include внутри папки Products.

Некоторые файлы в ~/Library/Developer/Xcode/DerivedData/xxx-ABCDгде xxx - имя вашего проекта или рабочей области, которые были удалены после Clean или же Clean Build Folder..., Очевидно, что Clean Build Folder... удалит больше файлов, чем Clean Сделаю. Тем не менее, я думаю, что удаление папки, о которой я упоминал ранее, необходимо в некоторых случаях, например, ваш Xcode не может работать должным образом.

Кстати, что-то изменилось для Xcode 8, Build папка сохраняется все равно после Clean Build Folder...

Другие вопросы по тегам