E E.1 Installation von Java und Turtle–Graphik Installation von Java Wenn Sie im CIP–Pool arbeiten, ist dies schon für Sie erledigt. Falls Sie zuhause arbeiten wollen, holen Sie sich bitte von Sun24 das JDK 1.2 für Ihr Betriebssystem und folgen den Installationsanweisungen. E.2 Der CLASSPATH Das JDK besteht aus sehr vielen Programmbausteinen (Klassen), die in auf die Zeichenfolge .class endenden Dateien enthalten sind. Der Name einer Java– Klasse besteht aus einer Pfadangabe und einem Klassennamen. Beispielsweise bezeichnet der Klassenname eip.TurtleScreen eine Klasse namens TurtleScreen, welche unter der Pfadangabe eip zu finden ist. Da jeder Benutzer die Dateien auf seiner Festplatte unterschiedlich organisiert, muß Java irgendwie mitgeteilt werden, wo auf der Festplatte nach einer derartigen Klasse gesucht werden soll. Hierzu verwendet Java die CLASSPATH–Umgebungsvariable. Eine Umgebungsvariable ist ein Mittel des Betriebssystems zur Konfiguration von Programmen. Die CLASSPATH–Variable enthält beliebig viele, durch Doppelpunkte getrennte Pfadangaben: CLASSPATH=pfad1:pfad2:pfad3:...:pfadN Dabei ist eine Pfadangabe entweder ein Verzeichnispfad oder der Name eines .zip–Archives. Ein .zip–Archiv ist eine Datei, welche viele andere Dateien enthält. Beispiel: Unter Windows könnte eine CLASSPATH–Variable, welche auf die Verzeichnissse c:\java\jdk\classes.zip, c:\java\turtle und . verweist, so ausssehen: CLASSPATH=.:C:\java\jdk\classes.zip:C:\java\turtle Unter Unix könnte die CLASSPATH–Variable so aussehen: CLASSPATH=.:/usr/local/java/jdk/classes.zip:/usr/local/java/turtle/ Wenn Java nach der Klase eip.TurtleScreen sucht, geht es wie folgt vor: Es schaut in jedem im CLASSPATH angegebene Verzeichnis nach, ob es eine Datei ak/Turtle/TurtleScreen.class enthält (unter Windows würde Java schauen, ob es eine Datei ak\Turtle\TurtleScreen.class findet). Die erste derartige Datei, die in einem Verzeichnis des CLASSPATH gefunden wird, wird dann benutzt. 24 http://www.java.sun.com/products/ 170 Beispiel: Wenn unter Unix der CLASSPATH wie oben angegeben ist, würde Java zuerst nachsehen, ob die Datei ak/Turtle/Turtle.class in der .zip–Datei /usr/local/java/jdk/classes.zip enthalten ist. Wenn dies nicht der Fall ist, würde Java nachschauen, ob die Datei /usr/local/java/turtle/ak/Turtle/Turtle.class existiert. Falls auch dies nicht der Fall ist, würde Java nachsehen, ob im aktuellen Verzeichnis das Unterverzeichnis ak/Turtle/ und darin die Datei TurtleScreen.class existiert. Der CLASSPATH wird immer benutzt, wenn Java eine Datei sucht. Ob Sie Java innerhalb eines Programms durch den Befehl import eip.TurtleScreen; anweisen, die Klasse eip.TurtleScreen zu verwenden, oder ob Sie auf der Kommandozeile ein Javaprogramm per > java MeineKlasse starten — immer wird die Klasse mit Hilfe des CLASSPATH gesucht. Dies kann zu verwirrenden Effekten führen, wenn im CLASSPATH nicht auch das aktuelle Arbeitsverzeichnis namens .“ enthalten ist. Denn dann kann Java Ihre ” Klassendatei selbst dann nicht finden, wenn Sie im aktuellen Arbeitsverzeichnis zu finden ist. Wenn im Arbeitsverzeichnis die Datei MeineKlasse.java existiert und .“ nicht ” im CLASSPATH enthalten ist, so erhalten Sie auf den Befehl java MeineKlasse die Meldung Can’t find class MeineKlasse In solch einem Fall nehmen Sie das aktuelle Arbeitsverzeichnis in Ihren CLASSPATH auf. Weiter unten beschreiben wir, wie man den CLASSPATH erweitern kann. E.3 Installation der Turtle–Graphik • Um die Turtle–Graphik unter Unix zu installieren, holen Sie sich bitte von unseren WWW–Seiten25 die Datei Turtle.tgz und legen Sie sie in Ihr Homeverzeichnis. Legen Sie dann bitte ein Verzeichnis für die Turtle an (z.B. ~/turtle). Dies geht auf der Unix–Kommandozeile per > mkdir ~/turtle Dann entpacken Sie die Datei Turtle.tgz wie folgt: > > > > cd ~ gzip -d Turtle.tgz cd ~/turtle tar xvf ~/Turtle.tar 25 http://www.tu-bs.de/institute/wir/eip/ 171 Prüfen Sie nun, ob die Datei ~/turtle/ak/Turtle/Turtle.java existiert. Anschließend setzen Sie bitte, wie im nächsten Kapitel beschrieben, den CLASSPATH und testen die Turtle durch den Befehl > java eip.TurtleDemo • Um die Turtle–Graphik unter Windows zu installieren, holen Sie sich bitte von unseren WWW–Seiten26 die Datei Turtle.zip. Sie benötigen außerdem den Entpacker unzip27 oder Winzip28 (Winzip ist eine kommerzielle Software — es ist üblich, daß fast alle unter Unix frei erhältliche Software unter Windows Geld kostet). Legen Sie bitte ein Verzeichnis für die Turtle an (z.B. C:\java\turtle). Dies geht entweder mit Hilfe des Explorers oder auf der Windows–Kommandozeile per > mkdir C:\java\turtle anschließend entpacken Sie bitte die Datei Turtle.zip hier hinein. Achten Sie dabei darauf, daß beim Entpacken alle Pfade wiederhergestellt werden. Wie das geht, ist in der Dokumentation des Entpackers beschrieben. Sehen Sie nach dem Entpacken nach, ob die Datei c:\java\turtle\ak\Turtle\Turtle.java existiert — sonst ist irgendwas schief gegangen. Anschließend setzen Sie bitte, wie im nächsten Abschnitt beschrieben, den CLASSPATH und testen die Turtle durch den Befehl > java eip.TurtleDemo E.4 Erweitern des CLASSPATH Sie können den CLASSPATH wie folgt um weitere Suchpfade erweitern. • Wenn Sie unter Unix arbeiten und die bash–Shell verwenden, können Sie auf der Kommandozeile eingeben export CLASSPATH=$CLASSPATH:neuerPfad Angenommen, Sie haben die Turtle–Graphik im Verzeichnis ~/turtle installiert, so sollten Sie den CLASSPATH wie folgt erweitern: export CLASSPATH=$CLASSPATH:~/turtle 26 http://www.tu-bs.de/institute/wir/eip/ 27 http://www.cdrom.com/pub/infozip/UnZip.html 28 http://www.winzip.com/ 172 Diesen Befehl müssen Sie jedesmal erneut eingeben, wenn Sie eine Kommandozeile öffnen. Sie können den Befehl statt dessen auch als letzte Zeile in die Datei ~/.profile aufnehmen. Dann wird der CLASSPATH bei jedem anmelden automatisch gesetzt. • Unter Windows können Sie dazu auf der Kommandozeile eingeben set CLASSPATH=%CLASSPATH%:neuerPfad Angenommen, Sie haben die Turtle–Graphik im Verzeichnis C:\java\turtle\ installiert, so sollten Sie den CLASSPATH wie folgt erweitern: set CLASSPATH=%CLASSPATH%:C:\java\turtle Diese Zeile müssen Sie jedesmal eingeben, wenn Sie eine Kommandozeile öffnen. Wenn Sie die obige Zeile als letzte Zeile in die Datei C:\autoexec.bat aufnhemen, wird der CLASSPATH bei jedem Neustart von Windows automatisch gesetzt. 173