!" # Fach Programmierung Dozent: Roland Gisler Dipl. Inf. Ing. HTL HTA Luzern Technikumstrasse 21 CH-6048 Horw T: 041 370 09 20 E: [email protected] W: iserver.hta.fhz.ch/~rgisler $ %&' (&) (( '' *+ # !, .%&/ ",, 0 -' $ %&' (&) () .% $ 0001+ "1 +21*+ 2 -%%-3%( 2.1 2.2 2.3 4 Voraussetzungen Abkürzungen Inhalt 5 5 5 ! "! # $ 3.1 3.2 3.2.1 3.2.2 Download Installation SDK Dokumentation % 6 6 6 6 3.3 3.3.1 3.3.2 Konfiguration Pfad ergänzen Environment-Variable 'JAVA_HOME' 6 7 7 3.4 3.4.1 3.4.2 Test Überprüfen des Pfades Überprüfen der Environment-Variable 7 7 8 & 5"6" 7 : , "!! ' 4.1 4.2 4.3 Source Kompilierung Ausführung des Java-Programmes 9 9 10 5.1 5.2 5.3 5.4 # " $ Download Installation Konfiguration Erstes Projekt mit Eclipse 11 11 11 13 , " '1% 18 * , " " " 8 ; -%%- " " 8 < , 5"6"9 0 *# , ! - 2 5"6" 7 : , -%%-3%( , " '1% 18 * , " " " 8 ; -%%- " " 8 < , 4 5"6"9 0 *# , ! "!! ( 2 -%%-3%( 4 "!! Dieses Dokument beschreibt die Installation und Konfiguration einer professionellen JavaEntwicklungsumgebung, basierend auf einem aktuellen Java Development Kit (JDK) von SUN, einigen OpenSource-Tools aus dem 'Apache'-Projekt und verschiedenen Integrated Development Environments (IDE) sowohl aus dem OpenSource- als auch aus dem kommerziellen Bereich. Es soll eine Hilfe sowohl für Anfänger wie auch für Fortgeschrittene sein, um mit möglichst wenigen und einfachen Schritten eine überblickbare und professionelle Entwicklungsumgebung installieren und konfigurieren zu können. Bitte beachten Sie, dass die Informationen zu den Downloadmöglichkeiten rein informativ gedacht sind – im Rahmen des Faches Programmierung stellen wir Ihnen eine CD zur Verfügung welche sämtliche erwähnte Software enthält. 5"6" 7 : , , " '1% 18 * , " " " 8 ; -%%- " " 8 < , 5"6"9 0 *# , ! & 2 -%%-3%( 4 "!! Die Anleitung geht davon aus, dass Sie die Installation auf einem System mit Windows NT/2000/XP vornehmen. Die zum Teil enthaltenen Screen-Shots stammen von einem deutschen Windows 2000 System. Wenn Sie ein anderes OS oder Plattform einsetzen gelten im Wesentlichen dieselben Empfehlungen, jedoch sind die konkreten Angaben natürlich entsprechend an die Gegebenheiten anzupassen. Innerhalb dieses Dokumentes werden die folgenden, gebräuchlichen Abkürzungen verwendet: ( )* + ! ! " " " " ! " " ! " # $ " # % & Dieses Dokument richtet sich sowohl an Studenten mit weniger Programmiererfahrung als auch an Fortgeschrittene. Sie müssen nicht alle Kapitel studieren, einige sind optional, bzw. Sie haben die Wahlfreiheit. # + , # , & " ' " () * +! , - .! / ! 3 ! 0 1 2 3 . .! 4 $ , - .! / 6 " .! / .! / 5 + .! / 5 + 8 5 + ) 7 1$ 9 : " ; ! / ! das J2EE ist eine Ergänzung zum J2SE und bietet u.a. Unterstützung für Servlets und EJB. sofern genügend Rechenpower vorhanden, Pentium ab 1GHz mit 512MB RAM empfohlen 5"6" 7 : , , " '1% 18 * , " " " 8 ; -%%- " " 8 < , 5"6"9 0 *# , ! = 2 -%%-3%( & " 4 , ! "!! - & Zur Installation benötigen Sie ein Java SDK-Setup, genauer das SDK der Java 2 Standard Edition (J2SE). Zusätzlich benötigen Sie die Dokumentation. Beides kann von der Homepage von SUN (http://java.sun.com/j2se/) frei heruntergeladen werden. Achten Sie dabei darauf dass Sie nicht nur die JRE sondern das ganze SDK – und dieses natürlich für die richtige Plattform (Betriebssystem) herunterladen. Bei der Dokumentation ist es üblich, dass nur für die Version (aber nicht für die Revision) ein Download verfügbar ist. Beispiel für das Java SDK: >-,8#9'?&?'?%'90 8 0,9 =/.1 @ In diesem Fall würde die im Herbst 2002 aktuelle Java Version 1.4.1, Revision 01 für die Windows/Intel Plattform heruntergeladen. Beachten Sie bitte, dass diese Datei knapp 40MB gross ist! Beispiel für die Dokumentation: >-,8#9'?&?'98 *12 A Die zu obigem JDK 1.4.1 gehörende Dokumentation, in gezipptem HTML-Format. & & Die Installation des SDK gestaltet sich dank der Setup-Routine relativ sicher und einfach. sollten dabei nur eines beachten: Passen Sie den Installationspfad an Ihre Bedürfnisse an, empfehlen Ihnen (entgegen der Voreinstellung) das JDK in das Wurzelverzeichnis einer Platte installieren! Vermeiden Sie aber auf jeden Fall die Verwendung von Leerzeichen in Pfadangabe&! Sie wir zu der Beispiel für Installationspfad (Empfehlung): $B>-,8#9'1&1' Hinweis: Unabhängig davon was für einen Installationspfad angegeben haben wird eine JRE und die Java Webstart-Umgebung in den Default-Pfad für Programme (typ. c$BA "!! bzw. c$BA "! , installiert, was so in Ordnung ist. & Nach der Installation des SDK erstellen Sie im Installationsverzeichnis des JDK von Hand ein zusätzliches Verzeichnis 'docs' (sofern nicht schon vorhanden) und entkomprimieren das ZIP-File von Hand in diese Verzeichnis! Die Startseite der Hilfe ist die Datei 8 @1+ ! . && Java ist nun zwar auf dem System installiert, wir empfehlen Ihnen aber noch die folgende minimale Konfiguration vorzunehmen, damit Sie bequemer damit arbeiten können: & 5"6" 7 : , , " '1% Womit das Default-Verzeichnis auf einem englischen System ('.:\program files\...') definitiv nicht empfohlen wird! 18 * , " " " 8 ; -%%- " " 8 < , 5"6"9 0 *# , ! . 2 -%%-3%( && ) 4 "!! < Ergänzen Sie den Suchpfad für Programme mit dem Beispiel: A" +D*$B>-,8#'1&1'B EF , *+ 4 "8" -Verzeichnis Ihrer Java-Installation. " Unter Windows 2000 erreichen Sie das über Systemsteuerung -> System -> Erweitert -> Umgebungsvariablen -> Systemvariablen -> Bearbeiten: %2 ! ) Achtung: Achten Sie darauf dass Sie den Pfad korrekt eingeben, und dass Sie ihn von den restlichen Einträgen mit einem Semikolon ';' abtrennen! && ( = " >?.@ = Legen Sie eine neue Environment-Variable mit dem Namen 'JAVA_HOME' an, welche als Wert den Pfad auf das Wurzelverzeichnis (das bedeutet identischer Pfad wie oben, aber ohne das '\bin') Ihrer Java-Installation enthält. Dafür gehen Sie wieder in den Dialog Umgebungsvariablen und wählen dann aber 'Neu...': % = " >?.@ = Diese Environment-Variable wird von vielen IDE's (und auch Java selber) herangezogen um Teile der Java-Installation flexibel zu referenzieren. So ist es Ihnen damit möglich auch mehrere Versionen von Java parallel zu installieren, und mittels dieser Environment-Variable (und des ebenfalls gesetzten Pfades natürlich) festzulegen welche aktuelle verwendet wird. &' $ Java ist nun vollständig installiert und konfiguriert, was wir mit den zwei folgenden Tests überprüfen wollen. Öffnen Sie dafür eine Eingabeaufforderung (Command-Shell). &' A ! ) Wenn Sie den Pfad korrekt gesetzt haben, können Sie nun aus einem beliebigen Arbeitsverzeichnis heraus bestandteile des JDK's aufrufen. Versuchen Sie die JavaVM zu starten und die aktuelle Version abzufragen: 5"6" 7 : , , " '1% 18 * , " " " 8 ; -%%- " " 8 < , 5"6"9 0 *# , ! C 2 -%%-3%( >"6" G6 4 "!! , Sie sollten folgende Ausgabe erhalten (insbesondere die Version kann natürlich variieren): &% " @ = ( = Alternativ können Sie auch mit >"6"* den Java-Compiler aufrufen, dann sollten Sie folgende Ausgabe erhalten: '% &' A " : ! ! ( Zur Verifikation der Environment-Variablen starten Sie die Java VM mit der EnvironmentVariablen als Teil der absoluten Pfadangabe: H5 : ? I HB B>"6" G6 , Bei Erfolg erhalten Sie die bereits bekannte Versionsmeldung: *% 5"6" 7 : , , " '1% 18 * " (: ! " 8 ; -%%- , " " ( " " 8 < , 5"6"9 0 *# , ! / 2 -%%-3%( ' " 4 "!! () Nachdem wir nun Java erfolgreich installiert haben, wollen wir unser allererstes Java-Programm schreiben, compilieren und ausführen! ' + Folgend finden Sie den Quellcode für das typische erste Programm 'Hello world': A J * * ",, A J 8 * , " O, !1 * 6 8 !" 1A K " KP 0 ,LMN 8QPNE R R 0%B + = ? C = Verwenden Sie einen Text-Editor Ihrer Wahl (z.B. Notepad) um obigen Quellcode in eine Textdatei mit dem Namen 81>"6" zu speichern. Achten Sie dabei sowohl im Quellcode wie auch beim Dateinamen auf die korrekte GROSS/klein-Schreibung. Java ist case-sensitiv! ' ! Sie können nun den eben erstellten Quellcode mit dem Java-Compiler kompilieren. Dafür verwenden Sie den folgenden Befehl: >"6"* G6 , 81>"6" Nach dem Start des Java Compilers sollten Sie die folgende Ausgabe erhalten, natürlich wieder leicht variierend je nach Version, Installations- und Arbeitsverzeichnis: 4% ! ? C 7 Wie Sie anhand der letzten Protokollzeile erfahren, sollten Sie nach erfolgreicher Kompilierung in Ihrem Arbeitsverzeichnis eine neue Datei mit dem Namen 'HelloWorld.class' finden. Es handelt sich dabei um das Resultat der Kompilierung, also den ausführbaren Code. Hinweis: Die Option '-verbose' können Sie auch weglassen, in diesem Fall erscheinen die in eckigen Klammern '[]' eingefassten Informationszeilen nicht. 5"6" 7 : , , " '1% 18 * , " " " 8 ; -%%- " " 8 < , 5"6"9 0 *# , ! ) 2 -%%-3%( '& " 4 "!! () Das kompilierte Java-Programm können Sie nun durch den Aufruf des JavaVM (Java Virtual Machine) mit dem Befehl >"6" 8 zur Ausführung bringen. Achten Sie darauf, dass Sie die Dateiendung '.class' nicht angeben dürfen! Als Ausgabe sollten Sie nun das 'Hello World!' sehen: 6% " () Herzlichen Glückwunsch! Sie haben soeben Ihr erstes Java-Programm geschrieben, erfolgreich kompiliert und ausgeführt! 5"6" 7 : , , " '1% 18 * , " " " 8 ; -%%- " " 8 < , 5"6"9 0 *# , ! '% 2 -%%-3%( * +! , 4 "!! - Eclipse ist eine OpenSource IDE welche massgeblich von IBM entwickelt und gefördert wird. Sie bildet unter anderem die Basis für IBM's aktuelle kommerzielle Entwicklungsumgebung 'WSAD'. Im Vergleich mit anderen IDE's mit ähnlichem Funktionsumfang ist Eclipse relativ resourcensparend und dank der Verwendung eines nativen GUI-Widget-Toolkits (SWT) auch im GUI-verhalten relativ schnell und spontan. * Eclipse können Sie frei von http://www.eclipse.org/downloads/ herunterladen. Wir empfehlen Ihnen, den jeweils aktuellsten Release (siehe 'Latest Release') zu verwenden. Derzeit aktuellste Version ist 2.0.2 (vom 7. November 2002). Eclipse ist für verschiedene Plattformen verfügbar, achten Sie darauf, dass Sie die korrekte Version verwenden, für Windows-Plattformen handelt es sich um die Datei: * A, 9 7 9-1%1'90 (-12 A * Eclipse verfügt über kein eigenständiges Setup, zur Installation muss lediglich der Inhalt der ZIPDatei entkomprimiert werden! Die Zip-Datei enthält dabei bereits ein Wurzelverzeichnis 'eclipse', so dass Sie direkt auf Ihr Laufwerk (zB. 'c:') entzippen können, womit Eclipse in das Verzeichnis: *$B * A, installiert wird. In diesem Verzeichnis befindet sich danach eine Datei mit dem Namen 'eclipse.exe', welche die IDE startet. Am Besten richten Sie sich dafür einen Shortcut (Verknüpfung) auf dem Desktop oder im Startmenu ein. Hinweis: Auf der Eclipse-Hompage ist inzwischen auch ein 'Internationalisation-Pack' verfügbar welches Eclipse u.a. auf Deutsch übersetzt. Leider wurden darin sehr konsequent alle Texte und Begriffe (z.B. auch 'Compiler', 'Source' etc.) und noch dazu kontextlos übersetzt. Da sich viele englische Begriffe unter Entwicklern auch im deutschen Sprachgebrauch absolut eingebürgert haben, kann dadurch eine gewisse Verwirrung entstehen. Wir empfehlen Ihnen deshalb mit der englischen Version zu arbeiten. *& Die Konfiguration von Eclipse beschränkt sich in einer ersten Phase auf ein Minimum. Im Normalfall können Sie Eclipse direkt nach dem ersten Start (welcher etwas länger dauert, weil dann verschiedene Dinge automatisch konfiguriert werden) verwenden. Unter Window -> Preferences finden Sie die komplette Konfiguration von Eclipse, die Sie gemäss Ihrem eigenen Gutdünken (Schriften, Codeformatierung, Default-Kommentare etc. etc.) anpassen können. Die folgenden Punkte stellen nur eine Zusammenfassung der wichtigsten Konfigurationen dar, welche Sie übernehmen bzw. kontrollieren sollten: 5"6" 7 : , , " '1% 18 * , " " " 8 ; -%%- " " 8 < , 5"6"9 0 *# , ! '' 2 -%%-3%( 4 "!! • Java -> Installed JREs: 8%A + +! " @= Kontrollieren Sie, ob mindestens eine JavaVM gefunden und aktiv gesetzt wurde. Wählen Sie die aktive VM aus und wählen Sie dann 'Edit...': 9% " +() " @ Ergänzen Sie in diesem Dialog den Pfad auf das 'docs'-Verzeichnis Ihrer Installation. 5"6" 7 : , , " '1% 18 * , " " " 8 ; -%%- " " 8 < , 5"6"9 0 *# , ! '- 2 -%%-3%( 4 "!! • Java -> Javadoc: % " +(D Überprüfen Sie in diesem Dialog, ob das 'javadoc.exe' aus dem 'bin'-Verzeichnis Ihrer JDKInstallation korrekt eingetragen ist. • Java -> New Project: % + ) 7 Empfehlung: Verwenden Sie die oben gewählte Konfiguration. Dadurch werden beim Erstellen eines neuen Projektes automatisch zwei Unterverzeichnisse 'src' (für Source) und 'bin' (für Binaries, d.h. class-Dateien) angelegt und diese somit separiert. Das erhöht die Übersichtlichkeit und hat sich speziell bei grösseren Java-Projekten sehr bewährt. Hinweis: Nehmen Sie sich auch die Zeit die restlichen Konfigurationsmöglichkeiten durchzusehen, gerade bez. Sourcecode-Formatierung, Farben und Schriften des Editors sind weitreichende Einstellmöglichkeiten gegeben! *' ) 7 +! Nach dem ersten Start von Eclipse sehen Sie in der Regel ein völlig leeres Fenster, was normal ist. Eclipse arbeitet mit einem Konzept von 'Sichten' (Plugins bzw. Views) und Perspektiven, wobei letztere mehrere Sichten logisch in einer grafischen Anordnung zusammenfassen. Sie können sich somit Ihre individuelle Umgebung selber zusammenstellen. Umittelbar nach der Installation sind aber bereits mehrere Perspektiven vordefiniert, welche Sie entweder über den vertikal an linken Fensterrand liegenden Toolbar, oder über das Hauptmenu mit 'Window -> Open Perspective' öffnen 5"6" 7 : , , " '1% 18 * , " " " 8 ; -%%- " " 8 < , 5"6"9 0 *# , ! '( 2 -%%-3%( 4 "!! können. Öffnen Sie nun auf diese Weise die 'Java'-Perspektive, so dass Sie danach folgendes sehen (die exakte Anordnung der Teilfenster kann natürlich variieren): &% + ! E " () ! / + ) 7 Wählen Sie nun aus dem Hauptmenu 'File -> New'. '% ) 7 F! Im sich öffnenden Dialog markieren Sie 'Java' und 'Java Projekt', und drücken dann 'Next >'. 5"6" 7 : , , " '1% 18 * , " " " 8 ; -%%- " " 8 < , 5"6"9 0 *# , ! '& 2 -%%-3%( 4 "!! Nun können Sie einen Projektnamen vergeben. Wir beginnen wieder mit unserem 'HelloWorld'Programm: *% ) 7 ! + Wenn Sie die Checkbox 'Use default' löschen können Sie selber ein Arbeitsverzeichnis festlegen. In zukünftigen Projekten empfehlen wir Ihnen dies zu tun, bei unserem ersten Projekt belassen wir aber den Default. Sie können nun mit 'Finish' die Projekterstellung abschliessen, oder sich mit 'Next >' den letzten Dialog noch ansehen, in welchem Sie aber keine Anpassungen vornehmen müssen. Als Ergebnis erscheint im 'Package Explorer' nun eine Baumstruktur, die Sie öffnen können: 0%1 + 5"6" 7 : , , " '1% 18 * ) 7 , " " " = ? 8 ; -%%- C " " 8 < , = 5"6"9 0 *# , ! '= 2 -%%-3%( 4 "!! Nun erstellen wir unsere erste und einzige Klasse mit dem Namen 'HelloWorld'. Wählen Sie dazu aus dem Hauptmenu 'File -> New -> Class', worauf folgender Dialog erscheint: 4% Tragen Sie im Feld Name 'HelloWorld' ein, und achten Sie darauf, dass die Checkbox 'public static void main(String [] args)' aktiviert ist – bevor Sie auf 'Finish' drücken. Die neu erstellte Klasse wird automatisch im Editor geöffnet und sämtliche Sichten werden aktualisiert, so dass Sie folgende Ansicht erhalten: 6%1 5"6" 7 : , , " '1% 18 * = ? , " " " 8 ; -%%- C = " " 8 < , E 5"6"9 0 *# , ! '. 2 -%%-3%( 4 "!! Nun vervollständigen Sie die main-Methode mit der noch fehlenden Codezeile aus unserem ersten Java-Programm von Kapitel 3. Dazu schreiben Sie zwischen die geschweiften Klammern der Funktion 'main' die Zeile O, !1 1A KP 8QPNE Vergessen Sie nicht, die Datei mit 'File -> Save' oder Ctrl-S zu speichern. Eclipse nimmt Ihnen die Compilierung ab und erledigt das beim Speichern vollautomatisch im Hintergrund. Sofern Sie keinen Tippfehler gemacht haben (was Ihnen aber sofort angezeigt würde), ist die Klasse nun bereits kompiliert und kann nur ausgeführt werden. Wählen Sie dazu aus dem Hauptmenu oder über den Toolbar den Befehl 'Run -> Run as -> Java Application'. Wenn das Programm erfolgreich gestartet und ausgeführt wurde, hat die Anzeige im unteren Teil des Fensters auf 'Console' gewechselt und Sie sehen darin Ihren Text 'Hello World!'. 8% + ! + = ? C = + Herzlichen Glückwunsch! Sie haben soeben in Eclipse Ihr erstes Java-Projekt erstellt, kompiliert und ausgeführt! 5"6" 7 : , , " '1% 18 * , " " " 8 ; -%%- " " 8 < , 5"6"9 0 *# , ! 'C