IntellijIDEA не распознает классы, указанные в зависимостях Maven
У меня есть проект в IntellijIDEA, который был создан с Maven. Затем я указал набор зависимостей и внешних репозиториев в файле Pom.xml.
Проект строит отлично в командной строке, если я делаю "mvn install". Когда я открываю любой из файлов кода в среде IDE, хотя он говорит, что все классы, обработанные зависимостями Maven, не распознаются - как это было бы для обычного проекта, если бы я никогда не добавлял необходимые JAR в путь сборки.
Я знаю, что в моих проектах Eclipse Maven (а не IntelliJ) он обычно показывает дополнительный каталог слева, в котором говорится "Зависимости Maven", и перечислены JAR файлы, втянутые через maven. Я этого не вижу. Что я делаю неправильно?
Вот как выглядит мой экран:
![IDE Image]()
Ответы
Ответ 1
По какой-то причине повторный импорт не сделал этого трюка. Посмотрев на это:
http://www.jetbrains.com/idea/webhelp/maven-importing.html
Я установил авто-импорт, а затем проблема исчезла; надеюсь, это помогает кому-то другому. Спасибо за все идеи:).
Ответ 2
После установки IntelliJ IDEA на новый компьютер я оказался с той же проблемой.
Мне пришлось обновить удаленный репозиторий maven. (Settings > Maven > Repositories
)
![enter image description here]()
Необходимо обновить локальные и удаленные репозитории. Удаленный не обновлялся до этого. После перезагрузки все сработало нормально. Возможно, вам понадобится reimport ваш проект.
Ответ 3
У меня возникали подобные проблемы. Для меня это оказалось тем, что я импортировал проект неправильно. Я делал
import project
<navigate to existing project and click top level directory>
follow the wizard
То, что решило мои проблемы с maven, состояло в том, чтобы сделать
import project
<navigate to existing project and click the pom.xml
follow the wizard
Ответ 4
Вы можете перейти к:
Файл > Настройки > Сборка, выполнение, развертывание > Инструменты сборки > Maven
и проверьте, не находится ли ваш pom.xml в списке "Игнорируемые файлы".
Ответ 5
Для меня Файл >> Invalidate Cache/Restart >> Invalidate and Restart работает в IntelliJ
Ответ 6
Простой reimport и/или обновление репозиториев через Intellij не помогли мне.
Вместо этого мне пришлось удалить полный каталог ~/.m2/repository
и позволить maven самостоятельно сортировать все. Впоследствии Maven -> Reimport
закончил.
Ответ 7
В моем случае проблема заключалась в том, что проект был в maven2, а intellj был настроен для maven3. Переключение на maven2 в настройках решило проблему
Ответ 8
Может быть полезно для других, которые все еще застряли как я.
Ни одно из предложенных исправлений не срабатывало. На самом деле, не раньше, чем я исправил свою основную проблему, которая была местом установки maven.
В моем случае я не использовал стандартное местоположение. Изменение этого местоположения в настройках maven (Настройки/Домашний репозиторий Maven/Maven) сделал трюк.
Мои 2 цента.
Ответ 9
По причинам, которые я не понимаю, в моем случае мне нужно было включить параметр "Всегда обновлять снимки" в "Сборка, Выполнения, Развертывание"> "Инструменты сборки"> "Maven".
Это заставило IntelliJ перезагружать зависимости и заставить его работать.
Ответ 10
Кеш вызывает проблемы! Обязательно сделайте следующее:
В вашем терминале перейдите в проект/модуль:
mvn clean install
В вашем IntelliJ:
-
Файл> Неверный кэш> Неверный
-
Щелкните правой кнопкой мыши на проекте/модуле> Maven> Reimport
Ответ 11
Это также случилось со мной после обновления Intellij до 1.4.15. Я попытался повторно импортировать весь проект с таким же результатом, но включение Maven Auto Import сделало трюки.
Ответ 12
Похоже, есть несколько, веских причин, по которым intelliJ игнорирует файл pom.
Ни один из предыдущих ответов не работал в моем случае, так что вот что работало, если кто-то еще сталкивается с этой проблемой:
В этом примере модуль 3 полностью игнорировался IntelliJ. Pom.xml в этом каталоге даже не рассматривался как maven pom.
Моя структура проекта такова:
myProject
module1
module2
module3
НО, моя (упрощенная) структура pom выглядит следующим образом:
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>devs</groupId>
<artifactId>myProject</artifactId>
<version>0.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>myProject</name>
<modules>
<module>module1</module>
<module>module2</module>
<modules>
<profiles>
<profile>
<id>CompleteBuildProfile</id>
<modules>
<module>module3</module>
</modules>
</profile>
</profiles>
</project>
Чтобы исправить это, я изменил корневой элемент <modules>
, чтобы временно добавить модуль 3.
<modules>
<module>module1</module>
<module>module2</module>
<module>module3</module>
<modules>
Затем повторите импорт корневой помпы, и IntelliJ добавит модуль.
Когда это будет сделано, верните пом. IntelliJ спросит, хотите ли вы также удалить module3
из структуры проекта. Нажмите No
.
Bam! Готово. Module3 работает, и я снова могу запустить тесты интеграции из IntelliJ: D
Ответ 13
Проблема была вызвана для меня, выбрав каталог проекта, который будет импортирован при первом запуске IntelliJ, а не в файле pom.xml
для проекта.
Закрытие проблемного проекта, а затем повторение процесса импорта, но выбор pom.xml
привел к созданию полностью работающего проекта в среде IDE.
Ответ 14
Для меня проблема, похоже, является конфликтом с админским плагином maven (https://plugins.jetbrains.com/plugin/7179?pr=idea).
Я отключу его, и он снова работает:)
Ответ 15
Перейдите к
Файл > Настройки > Сборка, выполнение, развертывание > Инструменты сборки > Maven
и проверьте домашний каталог Maven. Это должна быть та же самая установка maven, которая используется для командной строки
Ответ 16
Для меня, что было трюком для добавления зависимостей в Файл> Настройки проекта> Модули> Зависимости.
Ответ 17
Предполагается, что эти IDE облегчат жизнь разработчикам, но теперь со всеми этими настройками это стало головной болью. Просто нужна простая IDE с отладчиком, не нужны все дополнительные дополнения. Eclipse стал глючным и непоследовательным, сейчас я ищу другую IDE, но IntelliJ не является ответом.
Ответ 18
Просто удалите папку вашего проекта .idea и повторно импортируйте ваш проект в IntelliJ.