Entwickler-Installation des LUG-Framework #
Diese Anleitung dient dazu, daß man das erweiterte Lug-Projekt (also inklusive Datenbank-Oberfläche und Vereinsverwaltung als Beispiel) im Sourcecode herunterlädt und mit Eclipse daran mitarbeiten kann.
Basissystem #
Als Basis sollten folgende Dinge isnstalliert werden:
- JavaSE 6 JDK von Sun inklusive Sourcen (http://java.oracle.com)
- Mercurial (http://mercurial.selenic.com/)
- Ant (http://ant.apache.org/)
- Eclipse, z.Zt. Helios (http://www.eclipse.org)
Genaueres zur Installation dieser Komponenten auch unter verschiedenen Betriebssystemen kann man unter LugFrameworkEntwicklerInstallation.Basissystem finden.
Installationsanweisungen #
Grundsätzlich besteht das Framework inklusive Beispielapplikationen aus mehreren Projektverzeichnissen. Diese kann man entweder einzeln herunterladen, z.B. in Eclipse mittels des Mercurial Plugins oder mit Hilfe des sadomaso Skripts. Dieses lädt alle Teilprojekte herunter und stellt dabei sicher, daß jeweils zueinander passende Versionen heruntergeladen werden (im allgemeinen passen Versionen zueinander, die zur gleichen Zeit im Repository oben standen). Sadomaso ist erstens komfortabler und stellt zweitens sicher, daß man auch ältere Programmversionen installieren kann, ohne dabei völlig durcheinander zu kommen. Die heruntergeladenen Projektverzeichnisse muss man dann anschließend in Eclipse als Projekt noch einbinden.
Um das Build-System (FlyingAnt) zu konfigurieren, ist zuerst folgendes nötig:
Im ersten Schritt wird im /home/benutzername/ Verzeichnis die Datei: ".build.properties" (bitte auf den PUNKT am Anfang achten) erzeugt.
In dieser Datei werden folgende 3 Zeilen eingetragen;
hguser=benutzername hgserver=hg.javaproject.de:2222
Als hguser wird der von ThomasBayen vergebene Benutzername auf dem Mercurial-Server eingegeben.
Es sollte ein erster Test des SSH-Zugangs von der Konsole aus gemacht werden:
# ssh benutzername@hg.javaproject.de -p 2222
Beim ersten Zugriff wird eine Sicherheitsabfrage erfolgen, die mit yes bestätigt werden muss: The authenticity of host '[hg.javaproject.de]:2222 ([91.41.155.54]:2222)' can't be established. RSA key fingerprint is 5d:01:17:cf:ca:ca:d7:88:73:d6:e3:f7:eb:e1:38:17. Are you sure you want to continue connecting (yes/no)?
Ein passwortloses Login wird stark empfohlen (siehe OpenSSH), weil man sonst während dem Skriptlauf wach daneben sitzen und mehrmals das Passwort eingeben muss. Das Projekt besteht aus mehreren Teilprojekten. Diese werden nacheinander installiert. Für jedes Teilprojekt muss ggf. das Passwort eingegeben werden. Hierfür haben Sie ca. 1 Minute Zeit, d.H. Sie sollten während der Installation weder einen Kaffee holen gehen noch ein Telespiel in einem anderen Task machen. Besser ist es, wenn man sich passwortlos per ssh public key auf dem Server einloggen kann: http://www.lug-kr.de/wiki/OpenSSH#section-OpenSSH-EinloggenPerSSHSchl_C3_BCssel - dann kann man den Kaffee beruhigter trinken.
Nun erzeugt man folgendes Skript:
#!/bin/bash #Beispielaufruf: #./sadomaso.sh tbayen 2010-06-03 echo verwendeter Benutzername: "$1" echo verwendete Version: "$2" rm -r sadomaso mkdir -p sadomaso cd sadomaso hg clone -U ssh://$1@hg.javaproject.de:2222/repos/Vereinsverwaltung Vereinsverwaltung cd Vereinsverwaltung hg update -d $2 ant all ant -Dhgdatum=$2 sadomaso
Dieses Skript startet man mit
./sadomaso.sh benutzername 2010-06-03
wobei man die Parameter entsprechend ändern sollte. Nimmt man das Datum von heute, so erhält man die aktuelle Version. Am Ende des Skripts sollte sich das Fenster einer Beispielapplikation öffnen. Voila!
Einzelner Start des Programms #
Ist alles einmal installiert, kann man im Verzeichnis "Vereinsverwaltung/dist/" das Programm direkt starten mit:
java -jar Vereinsverwaltung.jar
wie geht's weiter? #
Das sadomaso-Verzeichnis kann man nun als Eclipse-Workspace nehmen und dort per Datei/Import... alle einzelnen Sub-Projekte importieren. Ab nun sollte man die Pflege der Versionsstände mit dem Mercurial Plugin für Eclipse machen.
Ein wiederholter Aufruf des sadomaso-Skripts löscht den gesamten Workspace(!!!) und installiert alles neu. Sollte man also ganz von Vorne anfangen wollen, ist das die beste Lösung - sonst nicht!
-- ThomasThiessen und ThomasBayen