OutOfMemory-Error beim Build in der CI-Pipeline

Zrebna

Bekanntes Mitglied
Hi!

Beim Build eines Maven-Projektes in der CI-Pipeline kommt es zu einem OutOfMemoryError:
Code:
Caused by: java.lang.OutOfMemoryError: Java heap space

Das Problem ist, dass lokal vor dem Comitten alle Tests auch mittels 'mvn test' ausgeführt werden und dabei kommt es ja auch zu einem Maven-Build, wobei hier alles problemlos durchläuft.
Mittlerweile konnte ich in Erfahrung bringen, wieviel RAM der Pipeline zur Verfügung gestellt werden.
Die Vermutung lag nun darin, dass lokal deutlich mehr Speicher freigestellt wird.
In Intellij im Hauptmenü unter 'Help' -> 'Change Memory Settings', sehe ich aber, dass dort sogar weniger Speicher für den Heap (Maximum Heap Size) zur Verfügung steht, als remote. Trotzdem habe ich mal testweise den Wert dort halbiert, aber den Fehler konnte ich auch danach lokal nicht reproduzieren.

Hat Jemand schon einmal ein ähnliches Problem gehabt und hat evtl. Jemand eine Idee, wie ich das Problem lokal reproduzieren könnte und remote bzgl. dem
Pipeline-Run (nach einem Push, der die Pipeline triggert) und dort dem Maven-Build nach beheben kann?

Lg
Zrebna
 

httpdigest

Top Contributor
Das, was du in den IntelliJ IDEA Settings unter "Help" -> "Change Memory Settings" siehst, ist der Speicher, den sich die IDE (also IntelliJ IDEA selbst) nehmen darf, also womit letztlich der Java/JVM Prozess der IDE gestartet wird. Das ist nicht der Speicher eines von der IDE gestarteten Prozesses, wie etwa eines Maven Build Prozesses. IntelliJ IDEA baut hier also dein Java Programm nicht und lässt die Tests hier also nicht in-process laufen, sondern startet dafür einen separaten Prozess, der dann eine separate JVM ausführt, in der dann Maven ausgeführt wird, welches dann wiederum den Build ausführt und die Tests startet.
 

Zrebna

Bekanntes Mitglied
Das, was du in den IntelliJ IDEA Settings unter "Help" -> "Change Memory Settings" siehst, ist der Speicher, den sich die IDE (also IntelliJ IDEA selbst) nehmen darf, also womit letztlich der Java/JVM Prozess der IDE gestartet wird. Das ist nicht der Speicher eines von der IDE gestarteten Prozesses, wie etwa eines Maven Build Prozesses. IntelliJ IDEA baut hier also dein Java Programm nicht und lässt die Tests hier also nicht in-process laufen, sondern startet dafür einen separaten Prozess, der dann eine separate JVM ausführt, in der dann Maven ausgeführt wird, welches dann wiederum den Build ausführt und die Tests startet.

Ah ok, danke schonmal.

Das heißt quasi, dass es bei diesem Setting eben nicht um den Speicher für für separate Prozesse, wie für den Build-Prozess von Maven geht.
 
Zuletzt bearbeitet:

Zrebna

Bekanntes Mitglied
Ah ok, danke schonmal.

Das heißt quasi, dass es bei diesem Setting eben nicht um den Speicher für für separate Prozesse, wie für den Build-Prozess von Maven geht.
Ich hab jetzt in den Umgebungsvariablen in den Systemvariablen eine MAVEN_OPTS mit folgendem Wert gesetzt: -Xms512m -Xmx512m.
Und jetzt failt die Testausführung lokal.

Nach dieser Heap-Exception kam auch noch im Log in der Pipeline folgendes:
Java:
org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'myController' defined in file [/home/xyz/work/1/s/target/classes/MyController.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'MyServiceImpl': Invocation of init method failed

Und genau diese obige error-message kommt nun auch lokal beim Fail der Testausführung.
Jedoch sind die Klassen korrekt annotiert - so wie in anderen Projekten, die Spring verwenden...Jemand da evtl. eine Idee?

So wären sie annotiert:

Controller:

Java:
@Slf4j
@RestController
@RequestMapping(BASE_URL)
public class MyController {

    public static final String BASE_URL = "xyz";

    
    private final MyService MyService;

    @Autowired
    public MyController(@Qualifier(MY_SERVICE_IMPL) MyService myService) {
        this.MyService = myService;
    }

Service-Klasse:


Java:
@Slf4j
@Service(MY_SERVICE_IMPL)
public class MyServiceImpl implements MyService {

...

 @PostConstruct
    private void init() {
      ...
 
Zuletzt bearbeitet:

mrBrown

Super-Moderator
Mitarbeiter
Wie sieht denn die ganze Fehlermeldung inklusive Stacktrace aus?

Kann gut sein, dass der OutOfMemoryError der eigentliche Grund ist, das sollte aber durch Caused By etc erkennbar sein.
 

Zrebna

Bekanntes Mitglied
Wie sieht denn die ganze Fehlermeldung inklusive Stacktrace aus?

Kann gut sein, dass der OutOfMemoryError der eigentliche Grund ist, das sollte aber durch Caused By etc erkennbar sein.

Das wars auch - ein Aufruf im Programm nimmt braucht besonders viel Memory, weil die dort erzeugte Daten-Ressource remote immer größer wird. Deswegen lief auch lokal alles weiter und nur remote gingen die Pipelines nichts mehr durch - die RAM-Kapazität remote zu erhöhen hat das Problem gelöst.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
G OutOfMemory Error bei Zahlenkonvertierungsprogramm Allgemeine Java-Themen 5
B Java OutOfMemory Error verhindern, Resourcenbedarf präventiv abschätzen? Allgemeine Java-Themen 19
R Speicherprobleme (OutOfMemory Error) Allgemeine Java-Themen 26
H java heap space (outofmemory error) Allgemeine Java-Themen 3
C Eclipse OutOfMemory nach dem exportieren Allgemeine Java-Themen 4
A Interpreter-Fehler OutOfMemory Exception mit Base64 decode Allgemeine Java-Themen 3
J BufferedReader OutOfMemory umgehen? Allgemeine Java-Themen 10
K Input/Output ObjectInputStream.HandleTable OutOfMemory Allgemeine Java-Themen 8
N OutOfMemory Allgemeine Java-Themen 5
M OutOfMemory Exception? Allgemeine Java-Themen 12
N OutOfMemory nur wenn -Xmx gesetzt ist?! Allgemeine Java-Themen 6
E java.lang.outofmemory über windows-cmd ändern Allgemeine Java-Themen 6
V JVM OutofMemory Linux geht, windows nicht Allgemeine Java-Themen 3
J ObjectInputStream und OutOfMemory Allgemeine Java-Themen 10
K OutOfMemory beim Entzippen Allgemeine Java-Themen 6
G IOException error 2 Allgemeine Java-Themen 3
urmelausdemeis Exception in thread "main" java.lang.Error: Unresolved compilation problem: Allgemeine Java-Themen 7
Mick P. F. Wie kriege ich die Fehlermeldung "java: symbol lookup error: ..." weg? Allgemeine Java-Themen 11
S An internal error occurred during: Launching null argument Allgemeine Java-Themen 1
S Gradle "schluckt" output und error Allgemeine Java-Themen 1
Bluedaishi Access violation error Allgemeine Java-Themen 2
M Jdeps-Error durch multi-release Allgemeine Java-Themen 6
Xge For/Array Error: IndexOutOfBounds Allgemeine Java-Themen 4
S CMD Compiler Error Allgemeine Java-Themen 13
L Compiler-Fehler Eclipse Error: A JNI error has occured Allgemeine Java-Themen 3
T Eclipse IDE Plugin Error Log Allgemeine Java-Themen 0
Robat JNI - Fatal Error Allgemeine Java-Themen 5
S LinkedList Error Allgemeine Java-Themen 4
F String Error Allgemeine Java-Themen 7
K Error Allgemeine Java-Themen 2
G Error Meldung bei Gomoku Spiel Allgemeine Java-Themen 9
J LWJGL 3 Error Code 1282 Allgemeine Java-Themen 4
N Maven ObjectMapper Error wenn das File gespeichert wird Allgemeine Java-Themen 0
D Datentypen Cache Images Heap Space Error Allgemeine Java-Themen 7
D Java Error String kann nicht in Int umgewandelt werden Allgemeine Java-Themen 2
L Exception/Error auf JDialog umleiten Allgemeine Java-Themen 2
G Java Error (Exception_acces_violation) Allgemeine Java-Themen 2
G Java Error (Exception_acces_violation) Allgemeine Java-Themen 0
Thallius Simple JSON Parser Error null Allgemeine Java-Themen 6
F Compiler-Fehler Hilfe bei Startup error Allgemeine Java-Themen 3
M List casting error Allgemeine Java-Themen 3
F Java Error, bei Installation, Start und dem Control Panal Allgemeine Java-Themen 8
A ausführbare jar Error Allgemeine Java-Themen 2
F Error Logging - best practices? Allgemeine Java-Themen 3
P JDK installieren Error: Could not find or load main class HelloWorld.java Allgemeine Java-Themen 3
D Java error Allgemeine Java-Themen 2
J JVM Launcher Error Allgemeine Java-Themen 30
Jats Programm mit CMD Befehl hängt sich auf oder gibt error = 5 aus Allgemeine Java-Themen 4
I Java Ordner kopieren [Error] Allgemeine Java-Themen 6
Jats ArrayList-Error Index: 1 Size:1 - Bitte um Hilfe Allgemeine Java-Themen 36
B Fatal error der JVM Allgemeine Java-Themen 9
N xml fatal error umgehen Allgemeine Java-Themen 14
M Webservice mit Axis2 und Eclipse - Error Allgemeine Java-Themen 2
S JNI - Fatal Error Allgemeine Java-Themen 2
D Java Heap error trotz anpassungen mit -xmx Allgemeine Java-Themen 4
R VM-Error - BadWindow (invalid Window parameter) Allgemeine Java-Themen 4
F Look And Feel Error Allgemeine Java-Themen 30
X Error bei der Programmierung eines Sortieralgorithmus Allgemeine Java-Themen 2
B maven 2 error bei plugin download Allgemeine Java-Themen 7
hdi Heap Sapce Error bei sehr großem String Allgemeine Java-Themen 5
D Java Error / Fehler Allgemeine Java-Themen 2
A JNI unsatisfied linker error Allgemeine Java-Themen 2
R Syntax Error, der keiner sein sollte Allgemeine Java-Themen 12
S Error aus der Konsole auslesen Allgemeine Java-Themen 2
G Text aus Zwischenablage in JTextarea -> JDBC Error Allgemeine Java-Themen 3
A Synatx Error, wo gar keiner ist ? Allgemeine Java-Themen 2
T Syntax Error Allgemeine Java-Themen 9
B JMF Installations Error Allgemeine Java-Themen 2
O java StreamCorrupted Error beim Belegen einer JTextpane Allgemeine Java-Themen 5
J Fatal Error Allgemeine Java-Themen 8
G Error: Hashtable Type safety: The method put(Object, Object) Allgemeine Java-Themen 6
J "Empty-String" Error Allgemeine Java-Themen 6
W Runtime Error216 Runtime error 217 Allgemeine Java-Themen 6
J Interpreteraufruf bring Error obwohl dies nicht sein dürfte. Allgemeine Java-Themen 24
G Error: java.lang.OutOfMemoryError: Java heap space Allgemeine Java-Themen 2
S Syntax Error, insert "AssignmentOperator Expression&amp Allgemeine Java-Themen 3
T Konsole "Fehlermeldung": error hereerror here Allgemeine Java-Themen 4
M typecast error Allgemeine Java-Themen 14
R Problemchen (unexpected error) Allgemeine Java-Themen 2
K error=2 (Datei nicht gefunden) - Datei ist aber da! Allgemeine Java-Themen 10
B unchecked cast Error Allgemeine Java-Themen 2
I Error: Unable to realize com.sun.media.amovie.AMController Allgemeine Java-Themen 3
M JButton verursacht einen HeapSpace Error? Allgemeine Java-Themen 6
B Syntax error on token ,VariableDeclaratorId expected after. Allgemeine Java-Themen 3
F Jar mit Abhängigkeiten ausführen -> NoClassDefFound Error Allgemeine Java-Themen 16
M strange error Allgemeine Java-Themen 3
S HTTPUnit Test Fehler: Error on HTTP request: 500 Internal Er Allgemeine Java-Themen 9
R .jar Executable - JVM Launcher: Fatal error Allgemeine Java-Themen 9
W Wie fange ich einen Error ab? Allgemeine Java-Themen 6
R Server Error 503 Allgemeine Java-Themen 4
D java.lang.error Allgemeine Java-Themen 2
berserkerdq2 Weiß jemand wie ich im Scenebuilder das Fenster so darstellen kann, dass beim Vollbildmodus die Objekte so angezeigt werden? Allgemeine Java-Themen 1
C Probleme beim Erstellen eines runnable-jar files Allgemeine Java-Themen 1
B Mysteriöse Ergebnisse beim Baccarat Programm? Allgemeine Java-Themen 13
8u3631984 Problem beim Mocken von Record Klassen Allgemeine Java-Themen 4
A Zweite Service Klasse beim Kompilieren Allgemeine Java-Themen 6
B Java Reflection Probleme beim wehcselseitigen Referenzieren zweier Klassen/Objekte Allgemeine Java-Themen 14
B Stringmanipulationen beim Dateinamen Allgemeine Java-Themen 8
B Woher kommen die Bildschirmkoordinaten beim java Robot? Allgemeine Java-Themen 14
Alex_99 Programm stürzt beim Aufruf der Funktion ab? Text ausgeben Allgemeine Java-Themen 45

Ähnliche Java Themen

Neue Themen


Oben