Maven 3.3.1 ECLIPSE: -Dmaven.multiModuleProjectDirectory системні властивості не встановлені


86

Я щойно встановив Maven 3.3.1 на Mac OS X, і створення проекту Maven за допомогою Eclipse видає мені цю помилку:

-Dmaven.multiModuleProjectDirectory system property is not set.
Check $M2_HOME environment variable and mvn script match.

Раніше цього не було з Maven 3.2.5.

Чи є спосіб виправити це (крім зниження версії до 3.2.5)?

Де саме я можу встановити цю властивість "multiModuleProjectDirectory" в Eclipse?


3
Сталася помилка m2e станом на 24.03.2015 р., І з тих пір вона була вирішена. Будь ласка, див. Stackoverflow.com/a/29735560/751158.
ziesemer

Відповіді:


191

В Eclipseтобі потрібно йти так.

Window-> Preference -> Java -> Installed JREs -> Edit

В правку Default VM argumentsпотрібно помістити

Якщо ви вже влаштували maven додому.

-Dmaven.multiModuleProjectDirectory=$M2_HOME

Не знаю чому, але коли ви запускаєте такий варіант maven, як clean в Eclipse, це покаже, що це необхідно.
Дієго Макаріо

5
@atamanroman і все - це сталася помилка m2e станом на 24.03.2015 р., і з тих пір вона була вирішена. Будь ласка, див. Stackoverflow.com/a/29735560/751158 .
ziesemer

Ви також можете додати аргументи віртуальної машини з Run Configuration -> Maven Build. Виберіть конфігурацію запуску та відкрийте вкладку JRE. Додайте -Dmaven.multiModuleProjectDirectory=$M2_HOMEв текстове поле аргументів VM.
Богі

Я пішов за рішенням, і все ще бачив ту саму помилку. Це було тому, що проект maven посилався на jre 1.7, але JAVA_HOME було встановлено на jre1.8. шлях вирішив проблему.
Шубха С,

21

В IntelliJ ви можете встановити цю опцію в полі Параметри віртуальної машини, яку ви можете знайти в наступному вікні конфігурації:

Налаштування / Створення, виконання, розгортання / Інструменти побудови / Maven / Runner

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


Також він працює для IntelliJ Idea 14.0 з Maven 3.3.9
Dreamcatcher

17

Це було зареєстровано як помилку з m2e в Eclipse за адресою https://bugs.eclipse.org/bugs/show_bug.cgi?id=462944 через зміни в Maven 3.3.1.

Це встановлено в m2e 1.5.2 станом на 13.04.2015. Це доступний випуск, який можна встановити за адресою http://download.eclipse.org/technology/m2e/releases/ .

(Більше не потрібно змінювати аргументи JVM для всієї робочої області або для конкретних конфігурацій запуску.)


1
Я отримую: An error occurred while collecting items to be installed session context was:(profile=epp.package.jee, phase=org.eclipse.equinox.internal.p2.engine.phases.Collect, operand=, action=). No repository found containing: osgi.bundle,org.aspectj.runtime.source,1.7.0.20120703164200 No repository found containing: osgi.bundle,org.eclipse.contribution.weaving.jdt.source,2.2.0.e37x-RELEASE-20120704-0900 + інші
Mykel Alvis

Останній випуск 1.5.X повинен бути тут: download.eclipse.org/technology/m2e/milestones/1.5
cyfur01

7

Визначте так у параметрах JVM:

-Dmaven.multiModuleProjectDirectory=HOME_PATH_OF_YOU_PROJECT

1
Де саме я можу встановити параметри JVM проекту в Eclipse?
Боб,

1
PROJECT_DIR має більше сенсу, ніж M2_HOME.
атаманроман

1
ця змінна не існує - те, на що ви насправді намагалися посилатись, це $ PROJECT_LOC
спеціаліст

3

Якщо у вашому командному рядку є це повідомлення про помилку, переконайтеся, що ваша змінна PATH вказує на ту саму apache-maven-3.X.X/binпапку встановлення maven, що і ваша змінна M2_HOME. У моєму випадку я змішував дві версії, що призвело до цієї помилки.


2

перейдіть до запуску конфігурації, створіть нову maven buildконфігурацію запуску, де на першій вкладці ви заповните базовий каталог і ціль, потім перейдіть до jre tabта додайте до vm argsцієї конфігурації:

-Dmaven.multiModuleProjectDirectory=%M2_HOME%

де M2_HOME- змінна середовища, що вказує на базовий каталог вашої інсталяції maven


2

Якщо ви хочете спробувати другий шлях, ви можете спробувати завантажити шлях із http://download.eclipse.org/technology/m2e/milestones/1.5/ .

Відкрийте Довідка> встановіть нове програмне забезпечення та завантажте з вказаної вище URL-адреси. Цей спосіб вирішив мою проблему.



0

у мене була та сама проблема з intelliJ 14, я випробував різні рішення, що пропонуються на форумах, але не розроблені. Що я зробив, це те, що я повністю видалив intellij та встановив intellij 15.0.1 та імпортував той самий проект, тоді все працює нормально.


0

Щоб встановити maven.multiModuleProjectDirectoryвластивість назавжди в Maven, я додав активований профіль за замовчуванням, який ініціалізує властивість із змінною середовища MAVEN_HOME у settings.xmlфайлі. Або ви також можете використати змінну середовища M2_HOME .

<profile>
    <id>my-profile</id>
    <properties>
            <maven.multiModuleProjectDirectory>${env.MAVEN_HOME}</maven.multiModuleProjectDirectory>
    </properties>
</profile>
<activeProfiles>
    <activeProfile>my-profile</activeProfile>
</activeProfiles>
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.