Datum: 2026-03-01
Problem: VS Code zeigt Compile-Fehler, aber mvn clean install läuft erfolgreich
Modul: r-uu.app.jeeeraaah.backend.api.ws.rs
Typ: WAR (Jakarta EE Deployment)
Besonderheit: KEIN module-info.java (einziges Modul ohne JPMS)
Aus jpms in action - jeeeraaah.md:
“Der Grund liegt in der WAR Deployment Architektur für Jakarta EE Application Server wie Open Liberty. Diese deployen WAR-Dateien standardmäßig auf dem
classpath, nicht auf demmodulepath. Die Jakarta EE Server APIs sind selbst nicht JPMS-konform, sodass JPMS-Kapselungsmechanismen nicht greifen würden. Da JPMS hier keine signifikanten Vorteile bringt, wurde auf die zusätzliche Komplexität verzichtet.”
Maven Build (Classpath-basiert)
├─ ✅ backend.api.ws.rs → Compiled as WAR on classpath
├─ ✅ Alle dependencies verfügbar
└─ ✅ BUILD SUCCESS
VS Code Java Language Server (JPMS-erwartend)
├─ ❌ Erwartet module-info.java
├─ ❌ "ErrorResponse cannot be resolved"
├─ ❌ "import de.ruu.lib.ws.rs.ErrorResponse" nicht gefunden
└─ ❌ 1099+ falsche Fehler
module-info.java kann VS Code die Module-Abhängigkeiten nicht auflösende.ruu.lib.ws.rs.ErrorResponse) werden als “nicht gefunden” markiertStatus: ✅ Bereits implementiert in .vscode/settings.json
{
"java.errors.incompleteClasspath.severity": "ignore",
"java.jdt.ls.vmargs": "-Xmx4G"
}
Effekt: Unterdrückt Classpath-Warnungen, aber Fehler bleiben sichtbar
cd /home/r-uu/develop/github/main/root
mvn clean
Dann in VS Code:
Ctrl+Shift+P → “Java: Clean Java Language Server Workspace”Ctrl+Shift+P → “Developer: Reload Window”Effekt: Cache wird geleert, aber Problem bleibt strukturell
Vorteil:
Nachteil:
Aufwand: ~2-4 Stunden + Testing
Erstelle .vscode/settings.json:
{
"java.project.excludedFolders": [
"**/backend/api/ws_rs"
]
}
Effekt: Module wird nicht analysiert → keine Fehler, aber auch kein IntelliSense
Realität:
Empfehlung: Fehler ignorieren und mit Maven arbeiten
# Entwicklungs-Workflow
mvn compile # Schneller Check
mvn clean install # Vollständiger Build
mvn test # Tests ausführen
Kurzfristig (heute):
.vscode/settings.json angepasst (bereits erledigt)Mittelfristig (optional):
Langfristig:
Dies ist kein echter Fehler, sondern ein Tool-Kompatibilitätsproblem:
Empfohlene Lösung: Mit Maven arbeiten, VS Code-Fehler ignorieren.