Maven 3.3.1 ECLIPSE: -Dmaven.multiModuleProjectDirectory system propery tidak disetel

86

Saya baru saja menginstal Maven 3.3.1 di Mac OS X, dan membangun Proyek Maven dengan Eclipse memberi saya kesalahan ini:

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

Itu tidak terjadi sebelumnya dengan Maven 3.2.5.

Apakah ada cara untuk memperbaikinya (kecuali menurunkan ke 3.2.5)?

Di mana tepatnya saya dapat menyetel properti "multiModuleProjectDirectory" ini di Eclipse?

Bob
sumber
3
Ini adalah bug m2e yang diajukan pada 2015-03-24, dan sejak itu telah diselesaikan. Silakan lihat stackoverflow.com/a/29735560/751158.
ziesemer

Jawaban:

192

Dalam EclipseAnda harus pergi seperti ini.

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

Dalam pengeditan, Default VM argumentsAnda harus memasukkan

Jika Anda sudah mengatur rumah maven.

-Dmaven.multiModuleProjectDirectory=$M2_HOME
Diego Macario
sumber
Saya tidak tahu mengapa, tetapi ketika Anda menjalankan opsi maven seperti clean di Eclipse, itu akan menunjukkan bahwa itu perlu.
Diego Macario
5
@atamanroman dan semua - ini adalah bug m2e yang diajukan pada 2015-03-24, dan sejak itu telah diselesaikan. Silakan lihat stackoverflow.com/a/29735560/751158 .
ziesemer
Anda juga dapat menambahkan argumen VM dari Run Configuration -> Maven Build. Pilih konfigurasi peluncuran Anda dan buka tab JRE. Tambahkan -Dmaven.multiModuleProjectDirectory=$M2_HOMEkotak teks argumen VM.
Bogie
Saya mengikuti solusinya dan saya masih melihat kesalahan yang sama, itu karena proyek maven memiliki referensi ke jre 1.7 Tapi JAVA_HOME diatur ke jre1.8. Membuat proyek Maven untuk menunjuk ke jre 1.8 di konfigurasi jalur Build-> java build jalan memecahkan masalah.
Shubha S
21

Di IntelliJ Anda dapat mengatur opsi ini di bidang Opsi VM yang dapat Anda temukan di tampilan konfigurasi berikutnya:

Preferensi / Bangun, eksekusi, penerapan / Alat Bangun / Maven / Runner

masukkan deskripsi gambar di sini

gerosalesc
sumber
Juga berfungsi untuk IntelliJ Idea 14.0 dengan Maven 3.3.9
Dreamcatcher
17

Ini diajukan sebagai bug dengan m2e di Eclipse di https://bugs.eclipse.org/bugs/show_bug.cgi?id=462944 , karena perubahan di Maven 3.3.1.

Ini diperbaiki dalam m2e 1.5.2 pada 2015-04-13. Ini adalah rilis yang tersedia yang dapat diinstal dari http://download.eclipse.org/technology/m2e/releases/ .

(Tidak perlu lagi mengubah argumen JVM untuk seluruh ruang kerja atau untuk konfigurasi peluncuran tertentu yang diperlukan.)

ziesemer
sumber
1
Saya mendapatkan: 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 + lainnya
Mykel Alvis
Rilis 1.5.X terbaru seharusnya ada di sini: download.eclipse.org/technology/m2e/milestones/1.5
cyfur01
7

Tentukan seperti ini di opsi JVM:

-Dmaven.multiModuleProjectDirectory=HOME_PATH_OF_YOU_PROJECT
khmarbaise
sumber
1
Di mana tepatnya saya dapat mengatur Opsi JVM dari Proyek di Eclipse?
Bob
1
PROJECT_DIR lebih masuk akal daripada M2_HOME.
atamanroman
1
variabel itu tidak ada - yang sebenarnya Anda coba rujuk adalah $ PROJECT_LOC
specializt
3

Jika Anda mendapatkan pesan kesalahan ini pada baris perintah Anda, harap verifikasi jika variabel PATH Anda menunjuk ke apache-maven-3.X.X/binfolder instalasi maven yang sama dengan variabel M2_HOME Anda. Dalam kasus saya, saya mencampur dua versi yang mengakibatkan kesalahan ini.

dvtoever
sumber
2

pergi untuk menjalankan konfigurasi, buat maven buildkonfigurasi peluncuran baru di mana di tab pertama Anda mengisi direktori dasar dan tujuan, kemudian, pergi ke jre tabdan tambahkan ke vm argskonfigurasi ini:

-Dmaven.multiModuleProjectDirectory=%M2_HOME%

di mana M2_HOMEvariabel lingkungan menunjuk ke direktori dasar instalasi maven Anda

hd84335
sumber
2

Saya mengalami masalah yang sama dengan versi Maven 3.3 dan 3.2, jadi saya memutuskan untuk menurunkannya ke versi 3.0.5 dan itu berfungsi dengan baik.

Mohamed Ennahdi El Idrissi
sumber
0

saya memiliki masalah yang sama dengan intelliJ 14, saya mencoba berbagai solusi yang disediakan di forum tetapi tidak berhasil. Apa yang saya lakukan adalah menghapus instellij sepenuhnya dan menginstal intellij 15.0.1 dan mengimpor proyek yang sama kemudian semuanya berfungsi dengan baik.


sumber
0

Untuk menyetel maven.multiModuleProjectDirectoryproperti secara permanen di Maven, saya telah menambahkan profil aktif default yang menginisialisasi properti dengan variabel lingkungan MAVEN_HOME di settings.xmlfile. Atau Anda juga bisa menggunakan variabel lingkungan M2_HOME .

<profile>
    <id>my-profile</id>
    <properties>
            <maven.multiModuleProjectDirectory>${env.MAVEN_HOME}</maven.multiModuleProjectDirectory>
    </properties>
</profile>
<activeProfiles>
    <activeProfile>my-profile</activeProfile>
</activeProfiles>
dabla
sumber