Eclipse m2e - такого файла или каталога в pom.xml нет

Я использую Eclipse 4.5.2 (Mars.2 JEE), плагин Eclipse Maven m2e v1.7.0 (20160603-1933), многомодульный проект Java 8 в Linux RedHat.

Моя структура проекта следующая:

  • Родительский проект, содержащий pom.xml
  • Модуль A, который не зависит от какого-либо проекта в Eclipse Workspace. Содержит только 3PP-зависимости в pom.xml (Guava, Apache Commons, SLF4J ...)
  • Модуль B, который содержит модуль A и зависимости 3PP (Guava, Apache Commons, SLF4J ...).

Структура:

parent-project
|-- pom.xml // only this file
|
|--module-a
|  |-- pom.xml
|  | code
|
|--module-b
   |-- pom.xml // contains Module A as dependency 

Проблема, которую я получаю (в Eclipse, в разделе «Маркеры»):

«Проблема конфигурации Maven» -> Нет такого файла или каталога pom.xml / module-b строка 1 Проблема конфигурации Maven

Поскольку в модуле-a у меня не было сообщений о каких-либо проблемах, я удалил модуль-а из зависимостей модуля-b, и указанная выше проблема устранена.

Это привело меня к следующему: Кажется, что m2e сбивается с толку, когда дело доходит до разрешения одного проекта рабочей области и зависимостей другого проекта. Теперь код отлично работает во время выполнения, но я хотел бы избавься от этого раздражения.

Что я пробовал:

  • Я пробовал Eclipse, устанавливая плагин Maven v1.6.2 в новой установке eclipse (до этого были удалены каталоги eclipse и workspace ... потерял некоторое время переустановка) - не повезло.
  • Я попытался использовать Eclipse v4.6.2 (Neon.2), и возникла та же проблема (раньше я удалял каталоги eclipse и workspace и создавал новые ... опять же, потратил некоторое время).
  • Предложение Stackoverflow: отключите разрешение рабочего пространства в индивидуальных настройках проекта. Я считаю это неприемлемым, поскольку мне нужно терять время на установку всех зависимых проектов, чтобы проект, похожий на «module-b», работал чисто.
  • Запуск mvn clean eclipse: clean, перезапуск eclipse + обновление Maven - без помощи.

Кто-нибудь обнаружил похожие проблемы? Какие-либо предложения?


person xanmcgregor    schedule 24.02.2017    source источник
comment
Не используйте mvn eclipse:XXX, потому что он давно устарел. Кроме того, вы работаете с проектами без каких-либо проблем из командной строки? Вы пробовали строить из командной строки через: mvn clean package?   -  person khmarbaise    schedule 25.02.2017
comment
Задания проекта и maven (т.е. чистый пакет) отлично работают как из командной строки, так и из eclipse. Поэтому я подозревал, что среда выполнения m2e не работает должным образом, поскольку она в основном сообщает о несуществующей ошибке. Кроме того, попробовал пакет mvn clean из командной строки, как было предложено, а затем обновил все проекты eclipse. Не помогло :(   -  person xanmcgregor    schedule 27.02.2017
comment
Вы нашли решение (без отключения разрешения рабочего пространства)?   -  person Elad    schedule 02.03.2017


Ответы (1)


Для меня основной причиной этого было это ошибка. Если вы находитесь в среде, где ваш временный каталог является общим (например, / tmp в Linux), и два или более разных пользователя открывают Eclipse и используют M2E для сборки, возникает ошибка. Где-то в M2E он записывает в / tmp / fakerepo, поэтому любой пользователь, который напишет здесь первым, становится владельцем папки и нарушает работу Eclipse для других пользователей.

Перезагрузка часто решает проблему (/ tmp очищается) или просто удаляет эту временную папку самостоятельно как администратор перед запуском Eclipse.

person Brett Smith    schedule 01.10.2018
comment
Подробнее о том, как обойти эту проблему: stackoverflow.com/q/51324406/1800052 - person Alexander Pozdneev; 05.02.2019