Wie bereits erläutert, kann auch ein Pfad angegeben werden, in dem sich die Klasse befindet.
C:\Angestellter – in diesem Pfad (Datei:Angestellter.java) befindet sich folgender Code:
public class Angestellter{ public static void main(String args[]) { Buchhalter b = new Buchhalter(); } }
C:\Buchhalter – in diesem Pfad (Datei: Buchhalter.java) befndet sich folgender Code:
public class Buchhalter{ public Buchhalter () { System.out.println(“Buchhalter angelegt”);}}
Gehen wir nun zu C:\Buchhalter und kompilieren mit
javac Buchhalter.java
die Datei und erhalten ein Class-File.
In C:\Angestellter muss das spätere Programm auf die von Buchhalter.java erzeugte Class-Datei zugreifen. Aus diesem Grunde wird dem Compiler mitgeteilt, bei der Compilierung noch in C:\Buchhalter hineinzuschauen und dessen Class-Datei miteinzubinden:
javac -classpath “C:\Buchhalter” Angestellter.java
Da der Classpath bei der Compilierung nur überprüft, ob die Methoden wirklich existieren und die Methodenaufrufe zusammen passen, muss bei der Ausführung nochmals der Klassenpfad mitgegeben werden.
Hier gibt es aber noch eine kleine Besonderheit; es soll ja in zwei Klassenpfade geschaut werden; den momentanen (“.”) und den von Buchhalter. Ist der momentane Pfad nicht mit
set CLASSPATH=.
oder
set CLASSPATH=C:\Angestellter
gesetzt, muss dieser beim Aufruf genannt werden. Mehrere Klassenpfade werden durch “;” voneinander getrennt:
java -classpath “.;C:\Buchhalter” Angestellter
Bei Unix-basierten Systemen wird statt ‘;’ ‘:” und statt ‘\’ ‘/’ vewendet