Ich habe ein paar verwandte Fragen dazu gefunden, aber alle beziehen sich auf Intellij oder auf Mac OS. Ich bin unter Windows 8.1 und benutze Eclipse:
Eclipse Java EE IDE für Webentwickler. Version: Luna Service Release 2 (4.4.2) Build-ID: 20150219-0600
Maven 3.3.1
Ich habe die "Ausführen als" -Parameter wie für den Kurs angegeben eingerichtet. Ich erhalte jedoch die folgende Fehlermeldung, wenn ich versuche zu laufen:
-Dmaven.multiModuleProjectDirectory-System wird nicht festgelegt. Überprüfen Sie die $ M2_HOME-Umgebungsvariable und das MVN-Skript auf Übereinstimmung.
Meine Ausgabe für mvn -version lautet wie folgt und scheint korrekt zu sein.
Apache Maven 3.3.1 (cab6659f9874fa96462afef40fcf6bc033d58c1c; 2015-03-13T16: 10: 27-04: 00)
Maven-Startseite: C:\Programme\Apache-Software Foundation\Apache-maven-3.3.1 Java-Version: 1.7.0_75, Anbieter: Oracle Konzern
Java-Startseite: C:\Programme\Java\jdk1.7.0_75\jre
Standardgebietsschema: en_CA, Plattformkodierung: Cp1252
Betriebssystemname: "Windows 8.1", Version: "6.3", Arch: "AMD64", Familie: "Fenster"
Ich bin ein absoluter Neuling, wenn es um Maven und Eclipse geht. Jede Hilfe wird geschätzt.
Gehen Sie zu: Window -> Preference -> Java -> Installierte JREs -> Edit.__Im Edit-Standard VM - Argument müssen Sie Eingeben Zuhause, für Windows-Rechner:
-Dmaven.multiModuleProjectDirectory=M2_HOME
Und für Linux und Mac OS X:
-Dmaven.multiModuleProjectDirectory=$M2_HOME
Falls Sie Maven 3.x verwenden, heißt die Variable $ MAVEN_HOME
-Dmaven.multiModuleProjectDirectory=$MAVEN_HOME
Ich habe dafür eine Lösung gefunden.
1) Ich musste Konfigurationen ausführen und der VM ein Argument hinzufügen. (Run - Run Configurations - JRE-Registerkarte - VM - Argumente). Geben Sie im Textfeld Folgendes ein
-Dmaven.multiModuleProjectDirectory=%M2_HOME%
Sie müssen% M2_HOME% oder etwas Ähnliches verwenden, um den Pfad zu Maven darzustellen. Wenn ich diesen Pfad direkt zu diesem Argument hinzufügte, konnte er ihn nicht finden. Ich denke es liegt daran, dass das Argument eine Längenbegrenzung hat. Mein Weg war
C:\Program Files\Apache Software Foundation\Apache-maven-3.3.1
ich habe eine Fehlermeldung erhalten, dass die Laufzeit unter Program Files\Apache nicht gefunden wurde
2) Richten Sie eine Systemumgebungsvariable namens M2_HOME mit C:\Programme\Apache Software Foundation\Apache-maven-3.3.1 ein
Systemsteuerung - System und Sicherheit - System - Erweiterte Systemeinstellungen - Umgebungsvariablen - Systemvariablen - Neu
Du bist nicht alleine damit. Ich bin vor kurzem auch zu 3.3.1 umgestiegen und habe das gleiche Problem.
Dies ist nicht die beste Antwort, aber das wird Ihnen heute wahrscheinlich helfen. Versuchen Sie, auf die neueste Version 3.2.x zurückzukehren. (Aktuell 3.2.5)
Ich habe das Gefühl, dass es mit MNG-5767 zusammenhängt, und einer Änderung, die kürzlich vorgenommen wurde. In einem m2e-Update sind möglicherweise einige Funktionen enthalten oder es hat etwas mit der Struktur Ihres Maven-Projekts zu tun. Ohne mehr Details wird es schwer zu sagen sein.
das Hinzufügen des VM - Arguments hat für mich funktioniert - Dmaven.multiModuleProjectDirectory = M2_HOME
Greifen Sie auf den folgenden Speicherort in Eclipse zu
Window
Preference
Java
Installed JREs
Bearbeiten Sie nun Default VM arguments
und platzieren Sie die folgenden Argumente entsprechend Ihrem Betriebssystemtyp.
Wenn Windows,
-Dmaven.multiModuleProjectDirectory=M2_HOME
Wenn Linux,
-Dmaven.multiModuleProjectDirectory=$M2_HOME
Das Aktualisieren Ihrer m2Eclipse-Installation von https://www.Eclipse.org/m2e wird das Problem lösen.
Eine neuere Version von maven setzt die multiModuleProjectDirectory-Eigenschaft im Skript bin/mvn
automatisch. Dies wurde here hinzugefügt, obwohl ich nicht sicher bin, wie die Versionsnummer/das Patchen funktioniert. Sie können in dieser Datei nach der Funktion find_maven_basedir
suchen. Wenn dies nicht der Fall ist, aktualisieren Sie maven.