XCode - Сбой индексации в одном файле - PullRequest
3 голосов
/ 01 марта 2012

Эта проблема не является серьезной, но, безусловно, заставляет процесс занимать больше времени. Когда я создаю свое приложение, индексация завершается сбоем в одном и только одном файле ( .m файл, если это имеет значение).

Нет интеллекта, нет цвета глобальные переменные , и большая часть кода, за исключением важных ключевых слов, имеет черный цвет. Так как нет интеллекта, всякий раз, когда мне нужно внести изменения, я должен видеть другие файлы для внесения изменений.

Ответы [ 8 ]

3 голосов
/ 09 марта 2012

это случилось для меня, когда файл не был включен в цель.

Метод 1:
- Перейти к вашему проекту (самый первый элемент в списке проектов) (cmd-1)
- выберите цель
- откройте вкладку Построить Phases
- добавьте .m файл в Compile Sources

Метод 2:
- выберите .m файл
- показать панель утилит (справа)
- первая вкладка: show the file inspector (cmd-option-1)
- проверить цель в Target Membership

2 голосов
/ 01 марта 2012

Вот шаги, которые я выполняю, когда сталкиваюсь с такой ситуацией:

  1. Очистить проект, в меню Xcode Product -> Очистить
  2. Закрыть проект
  3. Откройте Организатор и перейдите на вкладку Проекты, выберите проект
  4. Удалить все производные данные (кнопки на главном экране: Производные данные и Снимки)
  5. Удалить проект из списка слева (выберите его и нажмите клавишу Backspace)
  6. Наконец закройте Xcode, запустите его снова и снова откройте проект

Эти шаги заставят Xcode перестроить индекс для всего проекта.

1 голос
/ 09 марта 2012

Я нашел решение своего вопроса. На самом деле локализованный файл этого файла создавался в папке en.proj , где индексация не удалась. Итак, я просто скопировал этот файл в основную папку проекта и удалил его из папки en.proj . Теперь работает нормально. Я вижу все, что проиндексировано.

1 голос
/ 09 марта 2012

Хм.Учитывая, что обычные решения Clean или Delete Derived Data не сработали, мои следующие шаги будут следующие:

  1. Скопируйте содержимое .m в буфер обмена.
  2. Удалите.m из вашего проекта (включая отправку физического файла в корзину)
  3. Delete Derived Data
  4. Попробуйте скомпилировать проект (я знаю, что он, скорее всего, приведет к ошибкам, но пусть это сделает).
  5. Создайте новый файл .m и вставьте код обратно.
  6. Скомпилируйте и запустите проект.
  7. Delete Derived Data снова, чтобы вызвать переиндекс.
  8. Закройте XCode, снова откройте его.

Теперь, надеюсь, он должен быть проиндексирован.Если это все еще не работает, попробуйте переименовать этот класс (.h и .m), посмотреть, индексирует ли он, а затем переименовать его снова.

1 голос
/ 01 марта 2012

Если индексация не удалась, попробуйте очистить продукт (или всю папку сборки).Если это не помогло, закройте Xcode, удалите папку DerivedData (вы можете найти расположение на вкладке «Местоположения» в настройках) и снова запустите Xcode.

Затем процесс индексации попытается повторно-индексировать ваши файлы.

0 голосов
/ 03 июля 2013
  1. Поиск «GCC_INCREASE_PRECOMPILED_HEADER_SHARING» в настройках сборки проекта
  2. Изменить «увеличить общий доступ для предварительно скомпилированного заголовка» с NO на YES

Надеюсь, это поможет.

0 голосов
/ 01 марта 2012

Перейдите в Редактор -> Цвет синтаксиса и измените его на цель c.Это может помочь.

0 голосов
/ 01 марта 2012

Попробуйте Product> Clean (XCode 4).Такое иногда бывает, это раздражает.Если вы в отчаянии, попробуйте создать новый проект в другом месте и скопировать исходные файлы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...