Maven - Konnte nicht genügend Platz für einen Objekt-Heap-Fehler reservieren

8

Ich bin Maven, um mein Java-Projekt zu erstellen. Nach mehreren erfolgreichen Builds erhalte ich nun den folgenden Fehler:

%Vor%

In meiner maven.sh-Datei, die mein Build verwendet, habe ich Folgendes als erste Zeile hinzugefügt:

%Vor%

Ich bekomme immer noch den Fehler.

Kann jemand eine Lösung vorschlagen?

    
TheCoder 08.08.2012, 08:34
quelle

10 Antworten

15

Die Lösung war, den forkMode von maven-surefire-plugin auf 'never' zu setzen. Es scheint, dass bei der Ausführung von Tests maven sure fire eine neue JVM erzeugt. Stellen Sie es so ein, dass das Problem nie behoben wurde.

%Vor%     
TheCoder 08.08.2012, 14:15
quelle
11

Ich hatte das gleiche Problem und ich dachte mir, Maven würde nicht die richtige jvm verwenden. Sie können dies mit

überprüfen %Vor%

In meinem Fall war die in meinem JAVA_HOME und PATH angegebene jvm falsch: Ich habe eine x86 jdk 6 anstelle einer x64 jdk 7 verwendet. Das Problem wurde behoben.

    
Didier L 28.11.2013 16:11
quelle
2

Ich denke, dass du mit deinen Einstellungen mehr Platz reservieren möchtest als du hast: MAVEN_OPTS=-Xmx512m

Versuchen Sie es niedriger zu setzen, da Maven nur startet, wenn es den ganzen Raum reservieren kann. Dieses Problem ist mir aufgefallen und ich konnte es wie beschrieben lösen.

    
eeezyy 05.12.2013 18:54
quelle
2

Das Wechseln zu MAVEN_OPTS = -Xmx512m hat mir auf einem Windows 64 Bit geholfen.

    
Umesh 04.05.2015 08:32
quelle
1

Versuchen Sie die Variable zu setzen: MAVEN_OPTS = -Xmx512m -XX: MaxPermSize = 128m

    
Ostap Elyashevskyy 19.11.2014 12:04
quelle
0

Wie Didier L oben gesagt hat

Das war genau das Problem, das ich hatte, wir haben die x86 JVM statt der 64 Bit ausgeführt ...

Das Problem wurde behoben, als ich auf die 64-Bit-JVM wechselte.

    
CA Martin 28.12.2013 06:35
quelle
0

In IDEA IntelliJ IDE gibt es eine Einstellung für Maven -> Runner , um eine bestimmte JVM zu verwenden. Der Standard für mich war die Verwendung der JRE und nicht der JDK-Einstellung für JAVA_HOME. Stellen Sie sicher, dass Sie diese Einstellung überprüfen. Sobald ich JAVA_HOME verwendet habe, lief alles gut.

    
dbrin 28.01.2014 21:57
quelle
0

Ich habe das und seine Arbeiten für mich ausprobiert -

maven Version -3.2.5 Java-Version -jdk1.7.0_10

-Xmx600m -XX: PermSize = 256m

    
Mohammed Taslim 18.05.2015 13:37
quelle
0

Teste Java 64 Bit und konfiguriere dein Java_Home für dieses Java 64. obs .: javac -version und mvn -version muss dieses Java 64 zurückgeben.

    
Aline Ju 27.07.2015 16:02
quelle
0

Ich stieß auf dasselbe Problem, als ich versuchte, die Cloudera Navigator SDK-Beispiele zu erstellen. Ich verwende eine 32-Bit-JVM und die Kompilierung schien OK zu gehen, aber der Test ist danach mit diesem Fehler fehlgeschlagen:

%Vor%

Ich habe versucht, MAVEN_OPTS = -Xmx512m zu setzen, aber das hatte keine Wirkung - es ist mit derselben Nachricht fehlgeschlagen. Selbst der Wert von 2097152KB in der Fehlermeldung war immer noch der gleiche (seltsam!).

Ich habe schließlich herausgefunden, dass der Wert für die Größe des Heapspeichers für den Test in der Datei pom.xml fest codiert wurde! Es hatte

%Vor%

Ich habe pom.xml bearbeitet und das in -Xmx1024m geändert und dann konnte maven alles problemlos erstellen und testen.

Die Lektion daraus ist, dass wenn du etwas erstellst, das dir von jemand anderem gegeben wurde (wie Cloudera) und du einen Fehler wie diesen bekommst, überprüfe pom.xml sorgfältig, um zu sehen, ob die Einstellung dort fest programmiert ist .

FYI: Ich denke, dass die Verwendung einer 64-Bit-JVM möglicherweise auch dies gelöst hat, aber ich kann nicht zu 64-Bit wechseln. Wir haben noch ein paar andere Sachen, die wir brauchen, um damit arbeiten zu können, dass es nur mit einer 32-Bit JVM funktioniert (ich kann das hier nicht genauer erklären).

    
Frank K. 18.05.2017 03:19
quelle

Tags und Links