Джонатан предлагает здесь: Xcode Включает удаленные файлы .xib!, которые очищают все цели и пустые кеши будут исправлять проблему с Xcode, включая удаленные файлы .xib но я не могу найти способ очистить кеш в Xcode 4.
Как это сделать в Xcode 4?
Джонатан предлагает здесь: Xcode Включает удаленные файлы .xib!, которые очищают все цели и пустые кеши будут исправлять проблему с Xcode, включая удаленные файлы .xib но я не могу найти способ очистить кеш в Xcode 4.
Как это сделать в Xcode 4?
Command-Option-Shift-K, чтобы очистить папку сборки. Еще лучше, выйдите из Xcode и очистите файл ~/Library/Developer/Xcode/DerivedData вручную. Удалите все его содержимое, потому что есть ошибка, в которой Xcode будет запускать старую версию вашего проекта, которая где-то там. (Xcode 4.2 покажет вам папку Derived Data: выберите "Окно" > "Органайзер" и перейдите на вкладку "Проекты". Нажмите правую стрелку справа от имени папки "Производные данные".)
В симуляторе выберите iOS Simulator > Reset Контент и настройки.
Наконец, для полноты вы можете удалить содержимое /var/folders; происходит некоторое кэширование.
ПРЕДУПРЕЖДЕНИЕ. Удаление /var/folders может вызвать проблемы, и вам может потребоваться восстановить или переустановить вашу операционную систему после этого.
EDIT: я только что узнал, что если вы боитесь схватиться с /var/folders/, вы можете использовать следующую команду в терминале для удаления более целенаправленным способом:
rm -rf "$(getconf DARWIN_USER_CACHE_DIR)/org.llvm.clang/ModuleCache"
EDIT: для некоторых связанных с Swift проблем я нашел полезным удалить ~/Library/Caches/com.apple.dt.Xcode. Вы теряете много, когда вы это делаете, например, ваши запасные копии загружаемых наборов документации документации, но это того стоит.
Command-Option-Shift-K должен это сделать. Кроме того, перейдите в меню продукта, нажмите клавишу выбора, теперь опция "Очистить" изменится на "Очистить папку сборки...", выберите эту опцию.
Я нашел другой способ в дополнение к команде + option + shift + K. В XCode 4.2 есть органайзер, который можно открыть с самого верхнего значка справа. Там вы можете очистить все архивы и сохранить параметры проекта. Это помогло моей ситуации (я видел старые удаленные файлы в mainBundle).
Помимо выполнения следующих действий вы можете столкнуться с этой проблемой, если файлы раскадровки вашего приложения локализованы. Сначала сделайте каждый из них:
DerivedData
в ~/Library/Developer/Xcode/DerivedDataПредупреждение. Дополнительным шагом является удаление содержимого (не всей папки) папок /var/. Обратите внимание, что это может вызвать серьезные проблемы с вашей установкой OSx, и вы больше не сможете загружаться в OSx. В этом случае единственный вариант - переустановить OSx из консоли восстановления.
В конечном итоге мне удалось заново сгенерировать файлы локализации раскадровки и удалить английскую локализацию (что было ненужно, потому что базовый языковой стандарт - английский). Чтобы перезагрузить строки раскадровки, fooobar.com/questions/15829/....
Я заметил, что обновляются нетекстовые части моего раскадровки, а не локализованный текст. Если у вас есть локализация в вашем приложении, я бы порекомендовал проверить, обновляются ли ваши локализации (даже если это файлы .strings
).
Я вынимаю волосы из головы, потому что думал, что у меня такая же проблема. При создании приложения я не получил тот же результат на моем iPhone, что и на симуляторе.
Проблема заключалась в том, что я каким-то образом создал локализованную версию файла MainStoryboard.storyboard. Поэтому, когда я запускал приложение на своем телефоне, он показал датскую версию... и симулятор показал английскую версию.
Да, я новичок!:)
Чтобы удалить все полученные данные и кеш модуля в /var/folders
, используйте этот маленький ruby script.
derivedDataFolder = Dir.glob(Dir.home + "/Library/Developer/Xcode/DerivedData/*")
moduleCache = Dir.glob("/var/folders/**/com.apple.DeveloperTools*")
FileUtils.rm_rf derivedDataFolder + moduleCache
Это просто решило ошибку fatal error: malformed or corrupted AST file: 'Unable to load module "/var/folders/
для меня.
У меня были проблемы с Xcode 5.1, сбой на мне, когда я открыл окно doc.
Я не уверен в причине этого, потому что я также обновлял docsets, а я открыл окно.
Ну, в Xcode 5 каталог модулей теперь находится в папке с производными данными, которую я по очевидным причинам не удалял. Я удалил содержимое ~/Library/Developer/Xcode/DerivedData/ModuleCache и ~/Library/Preferences/com.apple.Xcode.plist, и все, что кажется после перезапуска Xcode.
Вы должны быть осторожны с файлом xib. Я пробовал все выше, и ничто не помогало мне. Я использовал пользовательские UIButtons, определенные в xib, и понял, что это может быть связано с тем, что я назначил там атрибуты, которые не изменялись программно. Если вы определили изображения или текст там, удалите их. Когда я это сделал, мои программные изменения начали действовать.
Здесь my оболочка script решение, которая удаляет производные данные и очищает кэшированные объекты проекта, для Xcode 4, 5 и 6.
Иногда просто вызов rm -rf в каталоге Derived Data оставляет затяжной файл или два, но мой script цикл до тех пор, пока все файлы не будут удалены.
Я пробовал почти все, но не мог помочь, что помогло мне отключить SIP (System Integration Protection), но это не работает, я не знаю, что происходит, когда и как, но системный файл где-то путают и вызывает это... хотя могут быть риски для отключения этого явно
вот как
1. Подключите Mac и удерживайте клавиши [command] + [R] для доступа к разделу восстановления.
2. Из раздела восстановления нажмите "Утилиты" в строке меню, а затем выберите "Терминал".
3. Введите следующую команду в терминал и нажмите Enter, чтобы выполнить ее: csrutil disable
4. После выполнения команды выйдите из терминала и перезагрузите Mac. Когда вы войдете в OS X, SIP будет отключен.
При использовании "Модели данных" в инспекторе есть варианты генератор классов, для меня это было так, поскольку уже был класс с существующим именем.
Кодеген: решил это для меня.
Мои "DerivedData" с Xcode 10.2 и Mojave были здесь:
MacHD/Users/[MyUser]/Library/Developer/Xcode