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?


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

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


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.)


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

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.


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



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.


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.


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>
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.