Ich habe die letzten Wochen Experimente mit VSCODE (genauer: VSCODIUM) für die Java-Entwicklung vorgenommen. Grob habe ich:
- VSCODIUM-1.51.1 installiert
 - die neuesten Spring-Tools eingespielt
 
Bei einem Spiel-Projekt hat “alles” wunderbar geklappt, bei meinen Arbeitsprojekten zunächst leider nicht!
VSCODE und SpringTools
Grundinstallation:
- VSCODE öffnen
 - Extension-Liste öffnen
 - Suchfeld: “spring tools”
 - Spring Boot Tools 1.23.0 installieren (= neueste Version)
 
Konfiguration:
- …
 
Beispiel-Java-Projekt
Ich verwende das Beispiel-Projekt von spring.io:
1
 |  | 
Das Beispiel-Java-Projekt liefert zwei Stände:
- initial
 - complete
 
Danach: VSCODE neu starten und Projekt-Verzeichnis “initial” öffnen:
vscodium gs-gradle/initial.
Leider “springt” bei mir hier die Java-Unterstützung nicht automatisch an. Die Java-Quelltexte werden zwar syntaktisch aufbereitet (also eingefärbt), leider werden aber JAava-Fehler nicht erkannt.
Also:
- JDK-11 von AdoptOpenJDK herunterladen
 - und auspacken nach ~/Software
 - und Link anlegen: 
ln -s ~/Software/jdk-11.0.9+11 ~/Software/jdk-11 
Danach: VSCODE neu starten mit JAVA_HOME und Projekt-Verzeichnis “initial” öffnen:
JAVA_HOME=~/Software/jdk-11 vscodium gs-gradle/initial.
Beim Start von VSCODE wird nun angezeigt: “The workspace contains Java projects. Would you like to import them?” Wir wälen “YES”. Danach: “Do you like to exclude the VSCode Java project settings files (.classpath, .project, .settings, .factorypath) from the file explorer?” Wir wählen “EXCLUDE GLOBALLY”.
Java-Projekte
Grob sehen meine Java-Projekte so aus:
- Gradle als Build-Tool
 jeweils “Multi Projekt”, es gibt Teilprojekte wie
- api … definiert die externe Schnittstelle
 - app … enthält den “eigentlichen” Programmcode
 - sit … enthält “System Intergation Tests”
 - etc
 
die Aufteilung in Teilprojekte ist eine Vorgabe für alle meine Arbeitsprojekte. Die Vorhabe kommt vom Auftraggeber
Ein so aufgebautes Java-Projekt kann ich in VSCODE einfach bearbeiten, indem ich den Projektordner in VSCODE öffne.
- Unten rechts erscheint “Java” bei .java-Dateien
 - Daneben zunächst so eine Art “Eieruhr” während VSCODE die Abhängigkeiten herunterläadt und das Projekt kompiliert
 - Fehlerhafte Java-Dateien werden “rot”
 - Junit-Tests kann ich direkt innerhalb von VSCODE ausführen
 - Und vieles mehr!
 
Arbeitsprojekte
Bei einem “richtigen” Arbeitsprojekt stelle ich fest, dass die oben beschriebenen Java-Erweiterungen nicht aktiviert werden!
Um einen “frischen” Start hinzubekommen, habe ich mehrfach dies gemacht:
- VSCODE gestoppt
 - Hintergrundprozess für den LanguageServer gestoppt: 
ps waux|grep java Java-Projektverzeichnis aufgeräumt:
find . -name bin|xargs rm -rffind . -name .classpath|xargs rm -rffind . -name .project|xargs rm -rffind . -name .settings|xargs rm -rffind . -name .factorypath|xargs rm -rf
VSCODE neu starten
Leider kein Erfolg, die Java-Erweiterungen sind nicht aktiv.
Unterschiede zwischen dem Beispiel-Java-Projekt und meinen Arbeitsprojekten sind diese:
- die Arbeitsprojekte bestehen auf mehreren Unterprojekten
 - die Arbeitsprojekte verwenden ein eigenes GRADLE_USER_HOME, weil sie ihre Dependencies bspw. nur bei Verwendung eines speziellen ProxyServera herunterladen können!
 
Also: GRADLE_USER_HOME setzen:
- /home/uli/.config/VSCodium/User/settings.json
 - Neue Zeile: 
"java.import.gradle.user.home": "/home/uli/.gradle-business", 
Danach: VSCODE neu starten, nun klappt “alles”.