
Wir erklären, wie man eine Java-Quellcode-Datei im Terminal kompiliert, die Compiler-Option -d verwendet und wie man ein Programm ausführt.
javac ist der Name des von Java verwendeten Compilers. Er ist Bestandteil eines jeden JDK (Java Development Kit). Gleichzeitig ist es aber auch das Kommando zum Aufruf des Compilers im Terminal, um damit eine Java Quellcode-Datei zu kompilieren. Dabei wird eine Datei mit der Endung .class erstellt, die dann mit Hilfe des JRE (Java Runtime Environment) ausgeführt werden kann.
In gleicher Weise ist java nicht nur der Name der Programmiersprache, sondern auch der Name des Kommandos.
Konkret startet der Befehl java die Java Virtual Machine (JVM), die angegebene Klasse wird geladen und die Methode main() dieser Klasse aufgerufen.
public class App {
public static void main(String[] args) throws Exception {
System.out.println("Hello, World!");
}
}Im Terminal
Im Terminal wechseln Sie mit dem Kommando cd zunächst in das Verzeichnis, in dem die Datei mit dem Quellcode gespeichert ist.
Für unser Beispiel haben wir bereits im Verzeichnis „java-projects“ für das Projekt selbst den Ordner „hello“ angelegt.

In den Ordner hello wechseln Sie mit:
cd /java-projects/helloDen Inhalt eines Verzeichnisses kann man sich mit dem Befehl ls anzeigen lassen. In unserem Beispiel beinhaltet das Verzeichnis „hello“ eine Datei: README.md und zwei Unterverzeichnisse: lib und src.
Die Quellcode-Datei mit der Dateiendung .java befindet sich im Unterordner „src“. In dieses Verzeichnis gelangt man also mit dem Kommando:
cd /java-projects/hello/srcAuch hier zeigt ls den Inhalt an, nämlich die Datei „App.java“, die wir kompilieren möchten. Der Befehl dazu lautet:
javac App.jave
Führen sie anschließend erneut den Befehl ls aus, wird zusätzlich die neu erstellte Datei „App.class“ angezeigt. Diese können Sie nun ausführen mit dem Kommando java, gefolgt von dem Dateinamen, aber ohne Datei-Endung.
java App
Und nun sollte „Hello, World!“ im Terminal ausgegeben werden.
Die Option -d
Um später bei größeren Projekten eine bessere Übersicht zu behalten, legt man ein separates Verzeichnis für die .class-Dateien an . Üblich ist für dieses Verzeichnis der Name bin (binary). Es liegt im Projekt-Verzeichnis.
Der Befehl javac kann mit verschiedenen Optionen erweitert werden. Für das Anlegen und Speichern der kompilierten Dateien in einem eigenen Verzeichnis dient die Option -d, gefolgt vom Namen des Verzeichnisses.
Für unser Beispiel wechseln Sie in den Projektordner:
cd /java-projects/hellooder wenn Sie sich noch im Ordner src vom Beispiel oben befinden, wechseln Sie in das nächst höhere Verzeichnis mit
cd ..Wichtig: ein Leerzeichen zwischen cd und den beiden Punkten.
Von hier aus lautet das Kommando:
javac -d ./bin ./src/App.javaimmer in der Reihenfolge:
<befehl> <option> <ziel> <start>
Man benutzt hier jeweils relative Pfadangaben. Der Punkt vor dem Schrägstrich (./bin und ./src) signalisiert, dass die Pfadangabe im aktuellen Ordner (hello) beginnt. Die Pfadangabe vor „App.java“ ist erforderlich, weil wir uns ja aktuell im Verzeichnis hello befinden und der Compiler ohne vorangestellten Pfad nur im aktuellen Verzeichnis sucht.

Nach dem Kompilieren zeigt ls zusätzlich das Unterverzeichnis bin an.
Um das Programm auszuführen, wechseln Sie in das Unterverzeichnis.
cd binund starten mit
java AppFazit
All dies erledigt eine IDE (Integrated Development Environment), wie Visual Studio Code, Eclipse oder IntelliJ mit einem Knopfdruck im Hintergrund. Aber auch in einer IDE können Fehler auftreten, die nur mit Kenntnis der grundlegenden Befehle zu beheben sind.