IntelliJ не может найти никаких объявлений


132

Я полностью удалил IntelliJ, а теперь переустановил и импортировал свой проект. Я импортировал с помощью gradle и вижу все файлы в моем проекте. Однако, когда я открываю файл, я не могу найти никакого объявления, к которому можно было бы перейти, выполнив cmd + click. У меня установлена ​​Java 7 SDK, и я даже не могу перейти к объявлению классов в собственном проекте. Переход к базовому классу Java вроде Stringили Listтоже не работает. Как я могу позволить IDE находить мои классы?

Я использую OSX Yosemite, IntelliJ 2016.1.2 build 145.972.


30
Ваш исходный каталог отмечен как исходный маршрут? Если нет, щелкните правой кнопкой мыши каталог с java-классами, а затем: Отметить каталог как -> Sources Root
AniaG

В моем случае мне нужно было пометить папку с ресурсами как Resources Root.
Genfood

1
Работает и здесь, но это немного глупо, что пользователь должен это делать ...
фреско

Ответы:


268

У меня была такая же проблема, и решение @ AniaG в комментариях сработало для меня.

  • Щелкните правой кнопкой мыши srcпапку
  • Пометить каталог как > Корень источников

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


1
В контекстном меню больше нет опции «Пометить каталог как». Используйте CMD + shift + A, чтобы найти действие «пометить каталог как»
Leo Droidcoder

3
Я все еще рассматриваю это как вариант в IntelliJ IDEA 2017.1.3
Томас

6
Пометить javaпапку вместо srcработы для меня
Searene

1
Когда я устанавливаю это, ошибки показывают весь проект. В чем дело.
JustCode

1
В структуре каталогов Maven мне пришлось пометить src / main / java как Sources Root, src / main / resources как Resources Root, а тестовые каталоги как аналоги тестовых источников. Мне всегда нужно контролировать свой «кулак смерти», когда какой-то n00b снисходительно говорит мне, что «разработка с Intellij происходит намного быстрее, чем с Eclipse».
Стив Гельман

40

Я столкнулся с той же проблемой и потратил почти 15-16 утомительных часов на очистку, восстановление, аннулирование кеша, обновление Idea с 16.3 до 17.2, все напрасно. У нас есть проект, управляемый Maven, и сборка была успешной, но просто не могла перемещаться между декларацией / реализациями, поскольку Idea не могла видеть файлы.

После бесконечных попыток исправить это, я, наконец, понял, что всю головную боль вызывают настройки IDEA. Вот что я сделал (система Windows):

  1. Выйти из IDE
  2. Рекурсивно удалить все .imlфайлы из каталога проекта del / s / q "C: \ Dev \ trunk \ *. Iml"
  3. Найти и удалить все .ideaпапки
  4. Удалите содержимое папок кэшей, индекса и LocalHistory в <user_home>\.IntelliJIdea2017.2\system
  5. Откройте Idea и импортируйте проект ....

VOILAAAAAAAAAAAA ... !! Я надеюсь, это поможет бедной душе от боли


1
Где находится .IntelliJIdea2017.2 \ system? Эта система путей специфична?
Daniel Reina

Я испытывал это для build.gradle.ktsфайлов и удаления .ideaкаталога и. imlфайла проекта было достаточно, чтобы исправить проблемы. Обратите внимание: это открытие проекта Linux в Windows (обе версии IntelliJ были одинаковыми - 2019.3)
Натан,

Большой!! На MaxOS удаление только папки .idea решило для меня (все файлы .iml были внутри нее).
ВадимБелов

18

У меня была такая же проблема с идеей, и я пытался открыть проект maven, но файлы pom не были идентифицированы. Итак, щелкнув правой кнопкой мыши по pom-файлу и выбрав «добавить как проект maven», я сделал для меня всю магию :)


1
аналогично, но для меня это был «реимпорт»
jsharp 07

Тем же! Сразу после «добавить как проект maven» мне снова пришлось щелкнуть правой кнопкой мыши pom.xml -> Maven -> Reload Project. и он начал навигацию :)
QauseenMZ

13

У меня были аналогичные проблемы в моем проекте IntelliJ mvn. Pom.xml не распознается. Что сработало для меня, так это щелкнуть правой кнопкой мыши по pom.xml, а затем добавить его как проект maven.


1
Тем же! Сразу после «добавить как проект maven» мне снова пришлось щелкнуть правой кнопкой мыши pom.xml -> Maven -> Reload Project. и он начал навигацию :)
QauseenMZ

9

Была такая же проблема. Но только своими методами.
Просто исправил это, сделав недействительным кеш: (File-> Invalidate Caches / Restart)


6

Если вы видите красный кружок на значке файлов Java и получаете предупреждение типа «не удается найти декларацию для перехода». Тогда вы можете сделать что-то ниже:

  1. Щелкните правой кнопкой мыши корневую папку вашего проекта / модуля.
  2. Пометить каталог как -> Исключено.

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

Меня устраивает. в Windows 7, Intellij 2016.1.1


5

Ваши исходные папки, в которых находятся ваши символы (классы), должны быть настроены как «Content Root».

  • Открытая структура проекта: #;
  • Щелкните Модули
  • Вы можете настроить свой корень содержимого (источники, тесты, ресурсы и т. Д.) Для каждого модуля, к которому вы хотите перейти.

После этого вы сможете перейти к своим символам.


5

В большинстве случаев возникала проблема с построением кеша IDE или что-то подобное.

Скорее всего File -> Invalidate Caches / Restart, эта проблема решится, просто позвольте IDE завершить кеширование.


3

cannot find declaration to go toОднажды я обнаружил эту проблему в своем проекте Maven. Причина в том, что один из подпроектов в моем проекте не был правильно импортирован как проект maven.


3

Щелкните правой кнопкой мыши папку src и выберите опцию «пометить каталог как» - «Исходный корень» и вместе с ним снова щелкните правой кнопкой мыши свой проект и выберите «переформатировать код» (под этим также выберите код очистки), и это будет работают нормально.


2

Убедитесь, что каталог, содержащий ваши скомпилированные классы и библиотеки, помечен как корневой каталог источников.


2

В моем случае я только что обновил свой IntelliJ до Ultimate 2018.2, и все мои проекты внезапно не могут найти реализации и папки src - оказалось, что IntelliJ удалил тип проекта (например, Maven).

Что я сделал:

Щелкните правой кнопкой мыши корневой проект> Добавить поддержку платформы ...> Найдите Maven (в моем случае)> Подождите, чтобы снова переиндексировать> Затем он снова заработал.


ОБНОВЛЕНИЕ 2:

Я всегда сталкивался с этим, когда обновляю IntelliJ (2019.1.1 Ultimate Edition). Просто нажмите кнопку обновления на вкладке Maven, и он переиндексирует ваш текущий проект как проект Maven:
введите описание изображения здесь


2

Одна из причин может заключаться в том, что он не может обнаружить pom.xml (или файл gradle), и поэтому не может установить его как проект maven (или gradle).

Вы можете вручную настроить его как проект maven (или gradle), выбрав свой pom.xml (или файл gradle)


1

IDEA может игнорировать некоторые файлы зависимостей maven. Узел «Внешние библиотеки» в структуре вашего проекта может быть пустым или неполным.

Перейти к:

  1. IntelliJ -> Настройки
  2. Найдите Maven [на вкладке слева] -> Игнорируемые файлы
  3. Посмотрите, есть ли с правой стороны какой-либо путь, который отмечен (игнорируется), и снимите этот флажок.введите описание изображения здесь

Вы также можете изменить это на вкладке Maven. Игнорируемые модули будут выделены серым цветом.
Def_Os

1

Возникла та же проблема, и в моем случае (проект Java) мне пришлось включить все зависимые банки в раздел библиотек проекта.

Файл -> Структура проекта -> Библиотеки

Мне пришлось добавить банки, зависящие от проекта, в приведенный выше раздел (например, project / web / lib /). После этого все уладилось. Надеюсь, это кому-то поможет.


0

В моем случае я использовал проект Gradle с подпроектами. Причина, по которой IntelliJ не смог найти объявления, заключалась в том, что подпроекты не были созданы.

Изучив, почему не были созданы подпроекты, я обнаружил, что использование «автоматического импорта» нарушает работу подпроектов.

После импорта проекта build.gradle без автоимпорта у меня все заработало.


0

Что бы это ни стоило, в Pycharm это: щелкните правой кнопкой мыши корневую папку-> Отметить каталог как-> Корень источников


0

Та же проблема для проекта Python !!!

Я попытался создать новый проект intellij и все обновил. Пробовал разные виртуальные машины, но ничего не вышло.

ПОКА я не удалил плагин Python + перезапустить IntelliJ + Intall Python Plugin + снова перезапустить IntelliJ. Я не уверен, что это «настоящее» решение, но оно решило мою проблему.

Может быть, попробовать что-нибудь знакомое для Java "Plugin" / JDK?


0

В моем случае ничего из вышеперечисленного не помогло. Помогло только обновление Intellij с 2017.3 до 2018.2.

Не пытайтесь использовать 2018.1, так как в нем не появлялось всплывающее окно поиска файлов.


0

Для кого-то, у кого вышеуказанное решение не сработало.

Для gradle,

Файл -> Структура проекта

Нажмите на Project Under Настройки проекта

Обновите уровень языка проекта как модули, частные методы в интерфейсах и т. Д.

Нажмите ОК и импортируйте настройки Gradle.

Структура проекта


0

Каким-то образом я установил игнорирование моих модулей Maven. В окне инструмента Maven щелкните правой кнопкой мыши и выберите «Отменить игнорирование проектов».

Тогда все каталоги будут выбраны автоматически.

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


0

Я тоже столкнулся с этой проблемой. Я пробовал упомянутые здесь решения. Кажется, проблема не в исходной папке.

Для меня проблема возникла, когда я установил новую версию IntelliJ, использовал версию 2019 года, перемещенную на версию 2020 года. Проект был открыт в новой версии, но декларации отсутствовали.

Я исправил это:

 - File>Project Structure.  
 - Under Project Settings go to Modules. Here you should see the different project folders, for me it was not there. 
 - Click the + button on top and click Import Module.
 - Select the root pom.xml and wait for the indexing to complete.

После индексации все объявления заработали.


-1

Если вы новичок в IntelliJ u Может потребоваться некоторое время, чтобы понять IntelliJ. Если код написан на Java и использует фреймворк огурца, то у нас есть два основных файла:

  1. Файл функций
  2. Файл определения шага

Цель: то, что мы определили в файле функций, необходимо перейти к файлу определения шага. (Ctrl + щелчок) Примечание: файл функции также должен содержать несколько ключевых слов красочных корнишонов. Если он не выполняет следующие шаги

Решение: зайдите в файл >> настройки >> плагины - найдите «Огурец для Java». Добавьте плагин, перезапустите IntelliJ, он обязательно будет работать.


Cucumber для Java поставляется в комплекте с IntelliJ
dustinevan
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.