Einstieg in Java unter macOS mit VS Code

Möchte man in die Java-Programmierung einsteigen, stellen sich vermutlich folgende zwei Fragen:

  • Wie installiere ich Java?
  • Welches Programm soll ich für die Java-Programmierung verwenden?

In diesem Blogbeitrag versuche ich beide Fragen zu beantworten, wobei hier auf Visual Studio Code (VS Code) als bevorzugten Editor eingegangen wird. Auch wenn sich dieser Artikel schwerpunktmäßig an Nutzerinnen und Nutzer von macOS richtet, lassen sich nachfolgende Ausführungen auch auf Windows-Systeme übertragen.

Java installieren

Für die Java-Programmierung wird das Java Development Kit (JDK) benötigt. Dieses JDK gibt es in einer — eventuell kommerziellen — Version von Oracle (Oracle JDK) oder als freie Version (OpenJDK), zum Beispiel von AdoptOpenJDK. Dabei handelt es sich um ein Projekt, an dem unter anderem Microsoft beteiligt ist. Darüber hinaus hat Microsoft auch ein eigenes OpenJDK-Projekt vorgestellt. Auf der entsprechenden Projektseite stehen OpenJDK-Versionen (Java 11 und Java 17) für Linux, Mac und Windows zur Verfügung. Nachfolgende Ausführungen beziehen sich auf die Installation des OpenJDK von AdoptOpenJDK.

Auf der Downloadseite von AdoptOpenJDK stehen zahlreiche Versionen zur Verfügung. Im Wesentlichen kann zwischen Versionen ohne und Versionen mit Langzeitunterstützung unterschieden werden. Letztere haben den Zusatz „LTS“, was für Long Term Support steht. Derzeit sind dies die Versionen 8 und 11. Mit Version 17 soll im Herbst 2021 eine weitere LTS-Version erscheinen. Im Herbst 2021 wurde die LTS-Version 17 veröffentlicht.

In diesem Beispiel wird das OpenJDK 11 (LTS) heruntergeladen und installiert. Unter macOS befindet sich Java standardmäßig im Verzeichnis

/Library/Java/JavaVirtualMachines/

Dieses Verzeichnis ist auf einem neuen System freilich noch leer, was wir jetzt ändern wollen. Angeboten werden die JDK-Versionen als tar.gz- oder als pkg-Dateien. Entscheidet man sich für die JDK-Version als Archivdatei (Endung tar.gz), dann muss dieses Archiv nach dem Herunterladen zunächst mit tar entpackt werden:

$ tar xfvz <Dateiname>.tar.gz

Anschließend kann sie mit der Anweisung

$ sudo cp -Rv jdk-11.0.19.jdk /Library/Java/JavaVirtualMachines/

in das Zielverzeichnis kopiert werden, wobei Ihr „jdk-11.0.19.jdk“ eventuell mit der Bezeichnung Eurer Version ersetzen müsst.

Mit

$ java -version

sollte anschließend überprüft werden, ob Java vom System erkannt wird.

Ein Hinweis zur Endung „jdk“: Es kann sein, dass das entpackte JDK nicht die Endung „jdk“ trägt. Dies mag kein Problem sein. Sollte aber das OpenJDK, nachdem es in das Zielverzeichnis kopiert wurde, nicht erkannt werden, fügt die Endung „jdk“ hinzu.

Neben den Archivdateien, stehen auch noch PKG-Dateien zur Verfügung. Dabei handelt es sich um Installationspakete für macOS-Systeme, die neben den zu installierenden Dateien auch eine Installationsroutine enthalten. Nach dem Herunterladen reicht es aus, das Installationspaket zu öffnen und die Installationsroutine zu durchlaufen. Die Installation über diesen Weg ist also mit deutlich weniger Aufwand verbunden.

OpenJDK 11 unter macOS installieren

Java deinstallieren

Zum Deinstallieren wechselt man einfach in das Verzeichnis „/Library/Java/JavaVirtualMachines“ und entfernt mit

$ sudo rm -Rfv <Java Version>

die entsprechenden Java-Installationen.

Visual Studio Code verwenden

Für die Java-Programmierung kann unter anderem Microsofts Visual Studio Code verwendet werden. Zunächst muss dieser Editor heruntergeladen werden. Die entpackte Datei verschiebt man anschließend in den Programme-Ordner.

Hinweis: Besitzer eines Macs mit M1-Prozessor, sollten die ARM-Version herunterladen, die als Insiders Edition zur Verfügung steht. Klickt dazu auf der Downloadseite auf „Apple Silicon Chip“.

Um den Einstieg in die Java-Programmierung zu erleichtern, hat Microsoft das Java Extension Pack veröffentlicht. Über Extensions kann diese Erweiterung zu Visual Studio Code hinzugefügt werden. Anschließend wird über die Command Palette (Command + Shift + P) der Befehl „Java: Configure Java Runtime“ aufgerufen werden. Dies öffnet den Java Runtime Configuration Wizard. Im Grunde wird herüber lediglich eine OpenJDK-Version heruntergeladen, was freilich nicht mehr erforderlich ist, wenn man — wie weiter oben erklärt — Java bereits installiert hat. Darüber hinaus kann man sich mit diesem Konfigurations-Tool auch anzeigen lassen, welche Java-Versionen vorhanden sind.

Das Extension Pack soll selbstverständlich nicht nur bei der Installation und Verwaltung eines JDK helfen. Vielmehr erhält man mehrere Tools für die Java-Programmierung mit Visual Studio Code, zum Beispiel den eigentlichen Java Language Support, einen Debugger oder den Java Test Runner.

Ein erstes Programm

Der Start eines neuen Java-Projekts beginnt in Visual Studio Code mit dem Anlegen eines neuen Verzeichnisses, das die Projekt-Dateien enthalten soll. In diesem Verzeichnis wird anschließend die erste Java-Datei erstellt, die hier die Bezeichnung „HelloWorld.java“ trägt.

In dieser Datei beginne ich mit der Erzeugung der Klasse HelloWorld. Denn jedes Java-Programm muss mindestens eine Klasse haben:

public class HelloWorld {
}

Diese Klasse ist die Heimat der Methode main(), dem Einstiegspunkt in dieses kleine Hello-World-Programm:

public static void main(String[] args) {
}

Da mit dem Java Extension Pack auch die Sprachunterstützung für Java installiert wurde, reicht es aus, lediglich „main“ einzugeben. Anschließend offeriert einem die Autovervollständigung im sich öffnenden Fenster eine Liste möglicher Optionen. Die Auswahl der ersten Option „main“ reicht aus, damit der Code für die Methode main() generiert wird. Schließlich folgt noch jene Zeile Code, mit der „Hello, World!“ ausgegeben wird:

System.out.println("Hello, World!");

Der vollständige Code sieht damit wie folgt aus:

public class HelloWorld {
    public static void main(String[] args) {
        System.out.println("Hello, World!");
    }
}

Um dieses Programm auszuführen, reicht es aus, oberhalb der Methode main() auf „Run“ zu klicken. Der Code wird jetzt kompiliert und das Ergebnis kann im sich öffnenden Terminal betrachtet werden. Alternativ kann die Kompilierung des Codes auch in der Shell mit

$ javac HelloWorld.java

erfolgen. Dies erzeugt eine Datei mit der Endung „class“. Um dieses Programm auszuführen, nutzt man den Befehl java. Es folgt dann der Dateiname ohne die Dateiendung „class“.

$ java HelloWorld
Hello, World!

Neues Projekt über die Command Palette erstellen

Zum Schluss noch der Tipp, dass ein neues Java-Projekt auch über die Command Palette (Command + Shift + P) angelegt werden kann. Dazu sucht man nach

Java: Create Java Project

Anschließend wird nach dem Verzeichnis, in dem der Projekt-Ordner erstellt werden soll, und dem Name des Projekts gefragt. Als Ergebnis erhält man ein Projektverzeichnis mit einer entsprechenden Ordnerstruktur, beispielsweise mit einem Unterordner „src“, in dem sich die Java-Code-Dateien befinden.

Die Datei, die hierbei erstellt wird, hat standardmäßig den Namen „App.java“. Die erzeugt Klasse heißt ebenfalls „App“, so dass der automatisch erzeugte Code wie folgt aussieht:

public class <strong>App</strong> {
    public static void <strong>main</strong>(String[] args) throws Exception {
        System.out.<strong>println</strong>("Hello, World!");
    }
}

Falls Ihr unter macOS die Entwicklungsumgebung IntelliJ IDEA bevorzugt, solltet Ihr einen Blick auf diesen Blogbeitrag werfen.

Aktualisiert am 9. Juli 2022