Gegeben ist ein Java-Projekt in Version 25, das mithilfe eines Entwicklungscontainers basierend auf einem Alpine-Image (derzeit eclipse-temurin:25-jdk-alpine-3.21) erstellt wird. Nach der Codeaktualisierung auf 1.107.0 und dem Neuaufbau des Devcontainers traten Kompilierungsprobleme auf, die darauf hinweisen, dass JavaSE-19 zum Erstellen verwendet wird. Dabei ist mir aufgefallen, dass ab Dezember 2022 die Code-Erweiterung redhat.java in der Version 1.13.0 installiert wurde. Vor dem Code-Update oder einem Downgrade auf Version 1.106.3 wird die neueste Version im Devcontainer installiert.
Um dieses Problem zu beheben, habe ich einerseits versucht, die Version in devcontainer.json zu pinnen. Das Devcontainer-Build-Protokoll zeigte die Ausgabeerweiterung „[email protected]“ nicht gefunden und Fallback auf 1.13.0. Andererseits habe ich neuere Alpenbilder verwendet (3.22 und 3.23 für JDK-25). Beide Maßnahmen waren nicht erfolgreich! Das Protokoll zeigte auch eine Liste der verfügbaren redhat.java-Versionen:
Code: Select all
redhat.java-1.13.0-alpine-x64
redhat.java-1.42.0-linux-x64
redhat.java-1.43.1-linux-x64
redhat.java-1.43.1-linux-x64.sigzip
redhat.java-1.44.0-linux-x64
redhat.java-1.44.0-linux-x64.sigzip
redhat.java-1.45.0-linux-x64
redhat.java-1.45.0-linux-x64.sigzip
redhat.java-1.46.0
redhat.java-1.46.0-linux-x64
redhat.java-1.47.0-linux-x64
redhat.java-1.49.0
redhat.java-1.50.0
redhat.java-1.50.0-linux-x64
redhat.java-1.50.0-linux-x64.sigzip
...
Getting Manifest... redhat.java
...
Extension 'redhat.java' v1.13.0 was successfully installed.
Ist das das richtige Verhalten?
Müssen wir eine andere Distribution für unser Entwicklungs-Image verwenden, um es als Code-Devcontainer zu verwenden?
Mobile version