Проект, над которым я работал 2 месяца, перестал работать без причины, потому что Xcode застрял на «Индексировании». Я больше не могу построить проект. Если я попытаюсь выполнить сборку, Xcode зависнет, и мне придется принудительно завершить работу. Это происходит только с этим проектом.
Я попытался очистить все производные данные, но это не помогло.
Я использую Xcode 4.5.2.
Любые идеи?
Ответы:
Если проблема не решена, замените файл резервной копией.
источник
Nuking Derived Data - это первое, что нужно попробовать во всех случаях неправильного поведения Xcode
источник
У меня была именно эта проблема, она была вызвана литералом массива из 20 элементов. Пришлось перейти на другой синтаксис. Довольно глупо.
источник
rm -rf ~/Library/Developer/Xcode/DerivedData
источник
У меня была аналогичная проблема, и я обнаружил, что случайно определил класс как его собственный подкласс. У меня не было предупреждений или ошибок, но компиляция застряла.
источник
При использовании Xcode 6 он говорит
Возможно, экземпляр make уже запущен. Завершите процесс и индексация продолжится. Глупо, но у меня сработало.
источник
Еще одна вещь, которую стоит попробовать, если вы пытаетесь решить проблемы с индексированием, а вы так далеко на странице!
Попробуйте добавить этот флаг в настройки сборки.
-Xfrontend -warn-long-expression-type-checking=400
Это вызовет предупреждение, если компилятору потребуется много времени для вывода сложного выражения.
Это может вызвать ошибку сборки, которая исчезнет после того, как вы найдете медленные выражения и затем удалите флаг сборки.
источник
Удерживайте alt> Продукт> Папка чистой сборки
источник
Это ошибка Xcode (Xcode 8.2.1), и я сообщил, что Apple, это произойдет, когда у вас есть большой словарный литерал или вложенный словарный литерал. Вам нужно разбить словарь на более мелкие части и добавлять их с помощью метода добавления, пока Apple не исправит ошибку.
источник
com.apple.dt.SourceKitService
процесс. Тогда XCode снова начнет индексировать, а не зависнет.источник
com.apple.dt.SKAgent
Для меня сработало полное закрытие Xcode, а затем перезапуск проекта.
Я не верю, что это не решение исходного вопроса, но это еще одна простая вещь, которую нужно попробовать перед удалением файлов и папок и т.д. Благодарю этот ответ за идею.
источник
Это случилось со мной. Если вы используете коконады, сделайте следующее:
источник
У меня была аналогичная проблема, когда Xcode тратил много времени на индексацию и часто зависал при сборке проекта, после чего мне приходилось принудительно завершать работу и перезапускать Xcode. Это очень раздражало.
Потом я заметил в проекте предупреждение о неправильном назначении
self
делегатом. Разумеется, в объявлении класса отсутствовал протокол. Обратите внимание, что в примере кода OP есть аналогичное назначение (хотя по образцу невозможно сказать, объявлен ли правильный протокол):После устранения этого предупреждения (путем правильного объявления реализованного протокола) Xcode перестал работать некорректно. Также я должен отметить, что проект действительно был выполнен правильно, так как были реализованы методы протокола . Просто Xcode не мог подтвердить, что протокол действительно должен реализовываться классом.
источник
Ничто не работает для меня, мой проект слишком велик (слияние объективных
c
,c++
,swift
иjava
файлы с j2obj). Я отключил индексацию Xcode и месяцами работал без завершения кода (и это больно). Но наконец я нашел обходной путь. Идея состоит в том, чтобы Xcode продолжал индексировать код, но ограничивал использование ЦП с помощью внешнего инструмента, напримерcputhrottle
.Итак, сначала вам нужно установить cputhrottle в терминал
Затем ограничьте процесс индексации Xcode следующим образом (20 = 20%)
Я представил здесь свое «решение» с подробностями о режиме: как предотвратить использование Xcode 100% ЦП при индексировании больших проектов
источник
Была аналогичная проблема в Xcode 6.4. Индикатор выполнения показывает, что «Индексирование» было «Приостановлено». Пытался удалить project.xcworkspace, а затем удалить производные данные, как описано выше. Не помогло. Отметив, что в приведенных выше сообщениях также предлагается исправить предупреждения, и поскольку я унаследовал этот огромный проект со 180 предупреждениями, я сказал себе: «Какого черта это выглядит как хороший день для исправления предупреждений». Когда я исправлял предупреждения, через полчаса я заметил, что индикатор выполнения «Индексация» увеличился с 10% до примерно 20%. Через час он был на 50%, затем еще через час на 80%, затем еще через полчаса все было готово! Заключение: добавьте к приведенным выше предложениям «долго пообедайте или вздремните».
источник
У меня возникла такая же проблема с бета-версией Xcode 7.0. В моем случае значения для «Provisioning Profile» и «Product bundle identifier» в «Build Settings» различались между PROJECT и TARGETS. Я установил для них такие же значения. И я также использовал те же значения для ЦЕЛЕЙ «appName» и «appNameTest». Затем закрыл проект и снова открыл его. Это решило мое дело.
источник
В моем случае удаление каталога производных данных не помогло. По-видимому, у меня был файл, заблокированный другим процессом, потому что после закрытия нескольких окон терминала и emacs и завершения процесса реагирования-родного упаковщика все разрешилось.
источник
Для себя я совершил глупую ошибку. Я пишу такой класс:
Класс наследует сам себя, вызывающий зависание. Нет подсказки сообщения от Xcode.
источник
Я столкнулся с этой проблемой в некоторых проектах с Xcode 9.3.1, и в моем случае проблема связана с некоторым быстрым кодом, который по какой-то причине Xcode не нравится. Эту проблему сложно решить, потому что трудно определить, какой файл вызывает проблему.
Когда у меня возникает эта проблема, я удаляю некоторые файлы из проекта Xcode (удаляя ссылки) и пытаюсь проверить, работает ли индексация. Мой способ сделать это
В моем случае у меня было определение класса с реактивным расширением в том же файле, и по какой-то причине Xcode это не нравится, я переместил реактивное расширение в другой файл, и теперь индексация работает нормально.
источник
Также остановите запуск приложения. если у вас есть другое приложение, работающее с вашим xcode, сначала остановите его, и вы должны продолжить индексацию.
источник
Для меня причина была в том, что я открыл один и тот же файл одновременно в основном редакторе и помощнике . Как только я закрыл Ассистента редактора, все получилось. (Xcode версии 7.2.1)
источник
Закройте свой Xcode, закройте любой клиент git (исходное дерево или терминал), если он открыт, и, наконец, перезапустите свой проект.
источник
Столкнулся с этим недавно на XCode 7.3.1 - я заметил, что использование ОЗУ на CleanMyMac3 становится 100%. Проблема волшебным образом исчезла сама собой после того, как я перезапустил машину. Честно говоря, я уже пошел дальше и попробовал принятый ответ, так что вы захотите сделать то же самое перед перезапуском на всякий случай :-)
источник
Я исправил это, просто удалив приложение со своего устройства и перестроив его.
источник
У меня была такая же проблема в Swift 2.2
Это было связано с общей функцией, перегруженной функцией
все, что мне нужно было сделать, это удалить одну из неиспользуемых перегрузок
источник
Мой случай: это был не файл project.xcworkspace, это не была папка «Производные данные».
Я потратил много времени зря. Хуже того, нет сообщения об ошибке. Никакой подсказки со стороны Xcode. Совершенно потеряно.
Наконец, отвечает эта функция (с более чем 10 параметрами).
Чтобы сойти с ума! Правда в том, что это вызывает беспокойство (потому что нет синтаксической ошибки или какой-либо ошибки)
источник
Для проблемы с индексированием XCode 9.3 - удалите XCode и установите заново с нуля. Работает для меня.
источник
Эта проблема возникла у меня, когда на моей машине не хватало места для подкачки. Закрыл несколько программ и вкладок браузера, и сборка внезапно завершилась успешно после 30 минут зависания. На моей стороне ничего общего с производными данными, заблокированными файлами и т. Д.
источник
Перепробовал все перечисленное, индексация продолжает зависать. Это помогло мне: если ваша индексация зависла, и у вас есть один или несколько быстрых процессов, потребляющих 99% вашего процессора - просто убейте эти быстрые задачи, подождите немного, и прогресс должен двигаться. Он может повторяться, пока не дойдет до финиша, в моем случае я остановил процесс 7 раз, но в конце индексация завершилась!
источник
Была эта проблема в проекте SwiftUI. Оказалось, что в одном из моих представлений SwiftUI была неправильно объявлена переменная. Я имел:
где мне нужно:
Не было ошибки компилятора, просто бесконечное индексирование. После того как я исправил ошибку, проект быстро построился.
источник