Чистый индекс Eclipse, он не синхронизирован с кодом
Я использую Eclipse с кодом C++ через связанные ресурсы в Linux. Индекс анализа кода, по-видимому, поврежден (определение Goto помещает курсор рядом с определением, но не на него), обновление ресурсов не исправляет его, а также перезапуск Eclipse.
есть ли способ очистить индекс и перестроить его?
9 ответов:
щелкните правой кнопкой мыши на вашем проекте, перейдите в подменю Index и выберите "перестроить", "обновить с измененными файлами" или "обновить все файлы."
Я не знаю разницы между этими тремя вариантами, но один из "Update with modified files" или "Freshen all files" обычно исправляет это для меня.
кроме того, я уверен, что вы уже сделали это, но убедитесь, что вы используете последнюю версию Eclipse CDT. Текущие версии кажутся гораздо более надежными индексирование, чем предыдущие версии.
еще один способ грубой силы-закрыть Eclipse, открыть каталог рабочей области и перейти к ".метаданные.\Плагины\орг.затмение.компания cdt.ядро " и удалить все там.
это, наконец, помогает, если" освежить все файлы " и друзья не работали.
с http://dev.eclipse.org/mhonarc/lists/cdt-dev/msg10390.html различия между "восстановить", "обновить измененные файлы" или "обновить все файлы":
перестроить: работает только для целых проектов. Очищает индекс и индексы файлы с нуля. При отмене он оставляет вас с пустым или частные индексы.
обновление с измененными файлами: работает на ресурсе выбор. Проверяет на отдельных файлах ли метка времени или scanner-config был изменен и обновляет индекс для измененного файлы.
обновить все файлы: работает над выбором ресурса. Обновление выбранные файлы в индексе. Индекс не очищается, это безопасно отменить операцию.
перейти к проекту
properties -> C++ general -> Indexer
.
- сделать это с помощью
'project specific settings'
,
(или на'Configure Workspace Settings...'
).- отменить выбор
'Enable Indexer'
нажмитеApply
.- выберите
'Enable Indexer'
нажмитеApply
.это должно полностью удалить и перестроить индекс.
ни один из вышеперечисленных не работал для меня (Eclipse Indigo), индекс все еще сломан и отказывается перестраиваться должным образом. Пока не применено это одно:
http://slsam2.blogspot.com/2012/02/eclipse-cdt-index-not-working.html
решающий бит связанного сообщения таков:
Eclipse больше не рассматривает ваш проект как проект C++. Выберите меню
File/New/Convert to a C/C++ project
. Индексирование исходного кода занимает некоторое время.Я все еще удивляюсь, как Затмение может бесконтрольно выстрелить себе в ногу вот так. Я подозреваю, что установка дополнительных пакетов может вызвать его. Возможно, поддержка JavaScript в моем случае.
удалить только the .pdom под .метаданные.Плагины\орг.затмение.компания cdt.ядро помогает, я получил индексатор привинчен после обновления Neon.2 неону.3 и это, кажется, решает проблему. (этот комментарий уже существует выше, но я не могу подтвердить его там).
Eclipse больше не рассматривает ваш проект как проект C++. Выберите меню Файл/Создать/преобразовать в проект C / C++. Индексирование исходного кода занимает некоторое время. работал на меня
Я начал с попытки Джоша Келлиса и ответов mmmmms без каких-либо успехов, но я, наконец, исправил это, проверив мои пути включения.
один из способов увидеть их в Обозревателе проектов, разверните проект, и там должна быть запись "включает". Внутри этого проверьте наличие небольшого желтого предупреждающего треугольника на каждом пути включения. Если этот треугольник присутствует затмение, скорее всего, не распознает путь.
включить пути редактируются с помощью щелчка правой кнопкой мыши на "ваш проект" в обозревателе проектов выберите " свойства " -- > C / C++ общие -- > пути и символы -- > включает.
Я вижу три варианта языка, сборка, Gnu C, Gnu C++. Выберите правильный, прежде чем начать добавлять пути (вероятно, Gnu C++). После добавления всех путей,-->Применить --> Ок и перестроить индекс, Если вас попросят.
мои ошибочные пути рабочего пространства выглядели как MyProject / myproject / folder когда это должно быть MyProject / folder.
для меня"проблемы" -вид всегда медленно обновляется, даже после восстановления индекса. Чтобы убедиться, что ошибка все еще существует, дважды щелкните запись проблемы, чтобы eclipse открыл/перезагрузил соответствующий файл. Это часто кажется необходимым для меня, чтобы обновить представление "проблемы".
Я действительно не знаю, было ли это затмение или мой scm, который испортил его. В любом случае, надеюсь, что это поможет кому-то!
Я использую Luna и строит с внешним файл Makefile.