Apache Maven 2.0. Reto Gurtner and Rosmarie Wysseier

Größe: px
Ab Seite anzeigen:

Download "Apache Maven 2.0. Reto Gurtner and Rosmarie Wysseier"

Transkript

1 Apache Maven 2.0 Reto Gurtner and Rosmarie Wysseier Berner Fachhochschule - Technik und Informatik (BFH-TI) CH-2501 Biel/Bienne, Schweiz Webseite: Zusammenfassung Diese Arbeit erklärt in einer kurzen Form, was alles zu Maven gehört, und wie man damit arbeitet. Der Schwerpunkt liegt auf der Verwendung von Maven als Buildtool. Um den Einstieg zu erleichtern, werden Beispiele schrittweise erläutert. Dies sowohl anhand der Grundbefehle in der Konsole, als auch mit dem weit verbreiteten Eclipse. Zusätzlich wird die Handhabung mit Versionsverwaltung (Subversion), Subprojekten und einem Buildserver (Maestro) erläutert.

2 2 1 Einführung 1.1 Was ist Maven? Maven wurde von der Apache Software Foundation (ASF) entwickelt, um verschiedene Projekte in derselben Art zu managen. Mit Maven hat jede Art von Projekt denselben Ansatz für den Build Life Cycle. Die Build-Logik kann wieder verwendet werden, und die Arbeitsschritte müssen nicht bei jedem Projekt von Grund auf neu erlernt werden. Damit können sich die Entwickler auf die Erstellung der eigentlichen Funktionalitäten konzentrieren. Die Erklärung, was Maven wirklich ist, gestaltet sich ausserordentlich schwierig. Maven ist eine Technologie für das Projekt-Management, es vereinfacht den Entwicklungsprozess, stellt eine Menge von Standards zur Verfügung, ist ein Repository, ein Framework und Maven ist Software. Nun, in diesem Dokument möchten wir erläutern, wie all diese Punkte ineinander greifen und Maven damit die Software-Entwicklung auf ein anderes Level bringt. [1] 1.2 Was bietet Maven? Maven bietet eine nützliche Abstraktion für die Herstellung von Software. Eigentlich ist das Prinzip dasselbe wie bei einem Auto: Egal wie das Gehäuse und der Motor aussieht, die Benutzung ist bei jedem Auto gleich, die Abläufe sind uns bekannt und ermöglichen, dass wir jederzeit in ein anderes Auto sitzen können. ASF hat sich bei der Entwicklung von Maven dasselbe Ziel gesetzt. Wenn wir wissen, wie ein Projekt mit Maven aufgebaut wird, können wir jederzeit auch an einem anderen Projekt arbeiten. Der Build-Prozess jedes Projekts beinhaltet die Bereitstellung von abhängigen Ressourcen, die Erstellung der Dokumentation, Tests und den eigentlichen Output. Maven macht diesen Prozess weniger zeitraubend und transparenter, weil es standardisierte Projekt-Layouts verwendet und die Abhängigkeiten verwaltet. Die dafür benötigten individuellen Projektstrukturen sind im Project Object Model (POM) deklariert, einer einfachen XML-Datei. Aus der Sicht des Entwicklers ist Maven also ein Tool, das den Build-Prozess vereinfacht und damit Ant ablöst. Maven ist aber nicht einfach ein Ersatz für Ant, sondern wesentlich mehr. Ant stellt keine Konventionen zur Verfügung, alles muss im Build-File angegeben werden, ebenso muss der Ablauf bestimmt werden. Maven kann mit Plugins viele übliche Projekt-Prozesse übernehmen und dies ohne den Aufwand zuerst ein Build-Script zu schreiben.[1] 1.3 Die Vorteile von Maven Logischer Zusammenhang Maven erlaubt jeder Organisation ihre Projekte zu standardisieren und transparenter zu gestalten. Wiederverwendbarkeit Durch die Verwendung von Maven bauen die Projekte auf einer Menge von bewährten Verfahren der Industrie auf.

3 Mobilität Maven senkt die Barriere für die Wiederverwendung der Build-Logik und auch von Software Komponenten. Es ist einfacher Komponenten in ein Projekt zu integrieren. Wartungsfreundlichkeit Das Entwickeln der Builds wird drastisch vereinfacht, der Fokus kann schnell auf die Software Entwicklung gerichtet werden. Weil Maven Projekte einem deniertem Modell folgen, sind sie sehr wartungsfreundlich. Dank all diesen Vorteilen ist es möglich, dass eine eziente Arbeitsteilung und Zusammenarbeit funktioniert und nützliche Code-Stücke wiederverwendet werden können. Die Vereinheitlichung der Prozesse macht die Arbeit für alle am Projekt beteiligten Entwickler einfacher und ezienter. Zudem ist die Chance grösser, dass jemand das Projekt als Ganzes versteht und ein unterhaltbares System resultiert.[1] 1.4 Prinzipien von Maven Hier werden die Prinzipien von Maven kurz erläutert und anhand von Beispielen erklärt. Convention over Conguration: Der Grundsatz von Convention over Conguration wurde von der Ruby On Rails Community 1 geprägt. Um zu verhindern, dass zu viel Zeit für die Konguration eines Projektes aufgewendet wird, denierte man verschiedene Standardkonventionen. Dies bringt viele Vorteile mit sich. Somit erleichtert es zum Beispiel, schneller Applikationen zu errichten oder besser innerhalb von einem Team zu kommunizieren. Nach Denition ist eine Konvention eine Vereinbarung von Standards und Normen. 2 Dies bedeutet, dass man nicht zwangsweise diese Konventionen einhalten muss, es jedoch sehr empfehlenswert ist dies zu tun. [1] Maven kennt drei Konventionen, um eine standardisierte Projektumgebung sicher zu stellen: Standard Directory Layout for Projects The concept of a single Maven project producing a single output Standard naming conventions Standard Directory Layout For Projects: Maven fördert das Verwenden von standardisierten Projektstrukturen. Dies hat den Voteil, dass man sich in neuen Projekten sofort zuerecht ndet, wenn man die Struktur bereits kennt. Entspricht die Standardstruktur nicht dem rmeneigenen Standard, so kann dies natürlich überschrieben werden. Wie bereits erwähnt ist dieses Vorgehen nicht empfehlenswert. Um standardisierte Projektstrukturen zu erstellen, verwendet Maven die sogenannten Archetypes. So kann zum Beispiel eine Projektstruktur für ein klassisches JSP-Projekt automatisch generiert werden. Es gibt eine breite Sammlung von bereits vorgefertigten Archetypes. Zusätzlich hat man die Möglichkeit einen eigenen Archetype zu generieren.[1] 1 Ruby on Rails 2 Wikipedia.de 3

4 4 The concept of a single Maven project producing a single output: Diese Konvention besagt, dass ein einziges Maven-Projekt nur einen Output generieren soll. Man nennt diesen Output auch ein Artifact. Bei grösseren Projekten kommt das Seperation of Concerns (SoC) Prinzip zum Zug. Die Idee hinter diesem Prinzip ist, dass man versucht ein Projekt so aufzutrennen, dass man am Schluss verschiedene unabhängige Teilprojekte hat. Gehen wir zum Beispiel davon aus, dass wir eine 3-Tier Webapplikation haben. Jeder Tier wird in einem eigenem Package repräsentiert. So gibt es die drei Packages: com.test.project.presentation, com.test.project.business und com.test.project.data. Nach dem SoC- Prinzip macht man nun aus diesen Packages drei verschiedene Maven-Projekte. Jedes Projekt generiert einen Output. Beim Business-Tier wäre dies wahrscheinlich ein.jar-file. Dies fördert die Wiederverwendbarkeit und - insbesondere bei Webapplikationen - die Skalierbarkeit.[1] Standard naming conventions: Maven kennt Namenskonventionen für Directories und für Projektoutputs. Wir verdeutlichen dies anhand einer erfundenen Library Super Library, welche sich zum aktuellen Zeitpunkt in der Version 1.5 bendet. Die Konvention besagt nun, dass der Name des.jar-files, welches Maven generiert, super-library-1.5.jar heissen muss. Dies ermöglicht auf einen Blick zu erkennen um welche Library es sich handelt und zusätzlich welche Version vorliegt[1]. Wiederverwenden von Buildlogik: Um gewinnbringende Projekte zu realisieren ist es wichtig, dass man das Rad nicht immer neu ernden muss. Dies gilt insbesondere auch für den Build-Prozess. Gehen wir als Beispiel davon aus, dass wir eine JSP-Webapplikation haben, welche auch CSS-Dateien verwendet. Damit in Produktion eine Webseite möglichst schnell geladen wird, ist es interessant so kleine CSS-Dateien wie möglich zu transferieren. Während der Entwicklung sind so optimierte CSS-Dateien jedoch unleserlich. Wir kreieren also nun eine Applikation, welche uns ein CSS gemäss unseren Wünschen optimiert. Maven durchläuft bei der Generierung eines Artifacts einen sogenannten Build Life Cycle. Dank dem Konzept der Plugins können wir auf jede einzelne Phase des Build Life Cycle Einuss nehmen. Ein Plugin ist somit eine Applikation resp. ein Stück Software, welches in den Build-Prozess integriert werden kann. Wenn wir jetzt also unsere Applikation zum CSS-Optimieren zu einem Maven- Plugin machen, werden die CSS-Dateien jedes mal automatisch optimiert, wenn wir einen Build-Prozess auslösen. Zudem gibt es den weiteren Vorteil, dass wir dank diesem Maven-Plugin unsere Applikation auch für jedes kommende Projekt einfach wiederverwenden können.[1] Declarative Execution: Der Zentrale Punkt in einem Maven-Projekt ist das sogenannte pom.xml. Das POM-File steuert die Ausführungsprozesse von Maven. Dieses Konzept bezeichnet man als declarative execution. Im folgenden veranschaulichen wir das pom.xml, welches die Ausgangslage für jedes Mavenprojekt ist.

5 5 <p r o j e c t> <modelversion> </ modelversion> <groupid>com. mycompany. app</ groupid> <a r t i f a c t I d>my app</ a r t i f a c t I d> <packaging>j a r</ packaging> <version>1.0 SNAPSHOT</ version> <dependencies> <dependency> <groupid>j u n i t</ groupid> <a r t i f a c t I d>j u n i t</ a r t i f a c t I d> <version> </version> <scope>t e s t</ scope> </ dependency> </ dependencies> </ p r o j e c t> Hier eine Beschreibung der wichtigsten XML-Elementen: Project: Ist das root-element des XML's modelversion: Deniert die Version des object model, welches verwendet wird. Diese Angabe ist wichtig, damit Maven richtig funktioniert groupid: Identiziert die Gruppe/Organisation, welche dieses Projekt erstellt hat. (zum Beispiel: ch.bfh.ti.iseminar) artifactid: Repräsentiert den Basisnamen/Projektnamen für das Artifact, welches Maven erstellen wird. Gemäss den standardisierten Namenskonventionen <artifactid>-<version>.<packaging> packaging: Deniert den Packagetype, welcher für dieses Artifact verwendet werden soll. Gültig wäre hier zum Beispiel: JAR, WAR oder EAR. Je nach Packagetyp wird von Maven ein anderer Build Life Cycle verwendet. version: Deniert die Version des Artifacts. Das Wort SNAPSHOT gibt an, dass das Projekt sich noch in der Entwicklungsphase bendet und noch nicht stable ist. Eine Komplette Referenz aller XML-Elemente ndet man unter Einheitliche Organisation von Abhängigkeiten: Wie bereits im vorhergehenden Kapital gesehen, sind im POM viele verschiedene Dinge deniert. Nicht eingegangen wurde auf den Tag <dependencies>. Hier wird jedes Artifact, von welchem das Maven-Projekt abhängig ist, aufgelistet und deniert. Ein Artifact ist in diesem Kontext zu verstehen als ein Stück Software, auf welches Maven zurückgreift. Früher mussten diese Bibliotheken bei jedem Projekt verknüpft werden. Maven erledigt dies nun für uns und sorgt dafür, dass wir dieselben Artifacts nicht mehrmals bei uns abspeichern. Die Artifacts werden deniert durch die groupid, die artifactid, die version und den scope. Was Maven tut ist eigentlich sehr einfach zu erklären: Maven nimmt die angegebenen Abhängigkeitskoordinaten und sucht zuerst im lokalen Repository. Wenn dort

6 6 die entsprechende Version des Artifact noch nicht vorhanden ist, werden remote Repositories durchsucht und das passende Artifact anschliessend im lokalen Verzeichnis abgelegt. Wir müssen also nicht denieren wo die Abhängigkeiten physikalisch zu suchen sind, sondern nur was das Projekt erwartet, dass zur Verfügung steht. Das erwähnte lokale Verzeichnis der Artifacts ist standardmässig unter <user_home>/.m2/repository zu nden. Es ist folgendermassen aufgebaut: Abbildung 1: Die lokale Ablage der Artifacts Bei qualizierten GroupIds (bspw. org.apache.maven) werden die entsprechenden Unterordner erstellt und darin dann die ArtifactId. Das remote Repository ist unter Zusätzlich können noch weitere Remote Verzeichnisse hinzugefügt werden, zum Beispiel für rmeneigene Bibliotheken. Die Reihenfolge des Suchens wird von der Reihenfolge der Denition im pom.xml bestimmt. Dank dieser einheitlichen Handhabung von Abhängigkeiten können mehrere Probleme gelöst werden. So müssen die Entwickler nicht mehr jedes.jar-file im Pfad hinzufügen, die Bibliotheken werden zentral abgelegt, sind nicht mehrfach vorhanden und die Versionsverwaltung wird massiv vereinfacht.[1] 2 Aller Anfang ist schwer 2.1 Ein kleines Projekt - Mit Hilfe der Konsole Installation: Maven kann unter heruntergeladen werden. Unter diesem Link bendet sich zudem eine Installationsanleitung für Maven. Erstellen eines Projektes mittels Archetype: Wenn man ein Maven-Projekt von Grund auf neu erstellen will, macht man dies mit Hilfe des Archetype- Mechanismus. Wie bereits erwähnt ist ein Archetype ein Projekttemplate. Wir starten nun mit dem simpelsten Archetype, denn man verwenden kann. Dazu geben wir auf der Konsole folgenden Befehl ein: C:\my-directory>mvn archetype:create -DgroupId=ch.bfh.ti.iseminar -DartifactId=TestProjekt

7 Parameter Bedeutung mvn Dieses Keyword verwenden wir immer, wenn wir mit Maven arbeiten wollen archetype:create Besagt, dass Maven einen Archetype für die Projekterstellung verwenden soll -DgroupId Hier geben wir die Id unserer Gruppe/Firma/Institution ein -DartifactId Hier denieren wir den konkreten Projektnamen Tabelle 1: Beschreibung der Parameter 7 Nach dem Ausführen dieses Befehls erkennen wir, dass einige Ordner und Dateien angelegt wurden. Dies ist die Standardstruktur für jedes Java-Projekt mit Maven. Um die Vorzüge von Maven etwas mehr auszunutzen wollen wir gemeinsam eine JSP-Applikation erstellen. Auch für diese Aufgabe gibt es einen vorgefertigten Archetype. Wir müssen lediglich den Konsolenaufruf von vorhin etwas erweitern. C:\my-directory>mvn archetype:create -DarchetypeGroupId=org.apache.maven.archetypes -DarchetypeArtifactId=maven-archetype-webapp -DgroupId=ch.bfh.ti.iseminar -DartifactId=TestProjekt Parameter Bedeutung -DarchetypeGroupId die Group- /FirmenId von dem Archetypeersteller -DarchetypeArtifactId Der Name des konkreten Archetype Tabelle 2: Zusätzliche Parameter für das Verwenden von spezischen Archetypes Eine gute Auistung aller standardmässig vorhandenen Archetypes gibt es unter Selbstverständlich kann man auch weitere Archetypes verwenden, welche von anderen Anbietern zur Verfügung gestellt werden oder sogar eigene Archetypes kreieren. Die Ord-

8 8 nerstruktur die uns Maven nun generiert hat, entspricht tatsächlich jener einer JSP-Webapplikation. Die folgende Abbildung verdeutlicht dies: Abbildung 2: Erstellte Ordnerstruktur Automatischer Build: Um eine Webapplikation auf einen ServletContainer zu deployen, generiert man in der Regel ein sogenanntes.war-file. Um dies mit Ant zu machen, wird ein relativ umfangreiches Ant-Script benötigt. Maven löst dieses Problem viel eleganter. Um dies zu demonstrieren geben wir folgenden Befehl ein: C:\my-directory\TestProjekt>mvn package Anschliessend werden unter C:\my-directory\TestProjekt\target\ verschiedene Ordner mit dem kompilierten Code angelegt. Zudem generiert Maven automatisch ein.war-file: C:\my-directory\TestProjekt\target\TestProjekt.war Hätten wir ein normales Java-Projekt würde dieser Befehl an Stelle von dem.war-file ein.jar-file generieren. Hinzufügen von Dependencies: Eine Webapplikation verwendet oftmals weitere Packages (Dependencies). Ein mögliches Szenario wäre, dass wir die Library log4j hinzufügen möchten. Damit diese Library automatisch bei dem Build hinzugefügt wird, fügen wir dem pom.xml einen neuen dependency-eintrag hinzu. <dependencies> <dependency> <groupid>l o g 4 j</ groupid> <a r t i f a c t I d>l o g 4 j</ a r t i f a c t I d> <version> </version> </ dependency> </ dependencies>

9 Beim Build-Prozess schaut Maven ob die log4j-library in unserem lokalen Repository verfügbar ist. Ist dies der Fall, so wird auch diese Library automatisch in das generierte.war-file eingebunden. Ist die Library noch nicht in unserem lokalen Repository verfügbar, so kopiert Maven die Library zuerst von dem default global Repository (http://repo1.maven.org/maven2/) in unser lokales Repository. Es kann natürlich auch passieren, dass die gewünschte Library nicht in dem default global Repository vorhanden ist. Zum Beispiel wenn es sich um eine rmeneigene Library handelt. Zum Teil sind auch prominentere Libraries nicht in dem default global Repository vorhanden. Ein Beispiel dafür sind die Libraries von Hibernate 3. Diese sind in einem anderen globalen Repository zu nden. Damit man nun diese Libraries trotzdem mit dem Dependencies-Management verwenden kann, gibt es die Möglichkeit weitere Adressen für globale Repositories zu denieren. Wir machen dies auch wieder im pom.xml <p r o j e c t> <r e p o s i t o r i e s> <r e p o s i t o r y> <i d>bfh maven repo1</ i d> <name>bfh maven repo1</name> <u r l>h t t p : // repo1. bfh. h t i. ch/maven2</ u r l> </ r e p o s i t o r y> </ r e p o s i t o r i e s> </ p r o j e c t> Maven durchsucht somit das default global Repository und zusätzlich all diejenigen, welche unter <repositories> speziziert wurden. Verwenden von Plugins: Eine Webapplikation will man in der Regel auf einen ServletContainer deployen. Bekannte Beispiele hierfür sind der Apache Tomcat 4 oder Jetty 5. Es existieren unterschiedliche Plugins für die verschiedenen Phasen des Build Life Cycle. Da die Integration von Jetty wesentlich ausgereifter ist als die Integration von Tomcat, zeigen wir hier die Integration von Jetty. Das Maven Jetty Plugin ermöglicht die Webapplikation direkt in Maven laufen zu lassen. Damit dies funktioniert müssen wir das Plugin in unser pom.xml einbinden.[2] <p r o j e c t> <build> <finalname>testprojekt</ finalname> <plugins> <plugin> <groupid>org. mortbay. j e t t y</ groupid> 3 Hibernate 4 Tomcat 5 Jetty 9

10 10 <a r t i f a c t I d>maven jetty plugin</ a r t i f a c t I d> </ plugin> </ plugins> </ build> </ p r o j e c t> Um diese Webapplikation nun auszuführen muss man lediglich folgenden Befehl eingeben: C:\my-directory\TestProjekt>mvn jetty:run Nach diversen Downloads wird Jetty automatisch gestartet. Rufen wir nun in einem Webbrowser folgende Adresse auf erscheint ein Hello World, welches aus dem index.jsp von unserer Webapplikation resultiert. Die Url ergibt sich aus dem Element <finalname> von dem pom.xml[2] Automatische Tests mit JUnit: Damit man bei einer Webapplikation überhaupt JUnit-Tests 6 ausführen kann, benötigt man auch Java-Klassen. Bis jetzt wurde nicht diskutiert wo diese Klassen hinkommen. Der Archetype, welchen wir verwendet haben, generiert den Zielordner der für den Java-Source gilt nicht automatisch. Also müssen wir dies als erstes manuell machen. Dazu geben wir den folgenden Befehl auf der Konsole ein[2]: C:\my-directory\TestProjekt>mkdir src\main\java Wie wir aus dem Kommando erkennen können werden die Java-Sources in Maven immer in dem Ordner src\main\java platziert. Was ist nun aber mit den Test-Sources? Allgemein gilt, dass alles was mit Tests zu tun hat in dem Ordner src\test platziert wird. Im Fall von JUnit-Testklassen ist dies also in src\test\java. Da auch dieser Ordner nicht automatisch von unserem Archetype erstellt wurde, machen wir dies ebenso manuell: C:\my-directory\TestProjekt>mkdir src\test\java Besondere Beachtung müssen wir noch der Dependency-Angabe von JUnit schenken. Den von uns verwendete Archetype hat hier automatisch JUnit eingebunden. Wir möchten dies nun auf Version 4.5 ändern. Damit Maven dies berücksichtigt müssen wir lediglich die Versionsnummer in der Dependency anpassen: <dependencies> <dependency> <groupid>j u n i t</ groupid> 6 JUnit

11 <a r t i f a c t I d>j u n i t</ a r t i f a c t I d> <version>4. 5</ version> </ dependency> </ dependencies> Würden wir nun die Tests ausführen, würde einen Fehler produziert. Das Problem liegt darin, dass Maven beim Kompilieren standardmässig Java 1.3 konformer JavaCode verlangt. Da aber JUnit 4 zum Beispiel Annotations verwendet, welche in Java 1.3 noch nicht unterstützt waren, führt dies zu einem Fehler. Um diesen zu beheben, muss man im pom.xml angeben, dass man Java 1.6 konformer JavaCode produzieren will. Man macht dies durch das Einbinden des folgenden Plugins: [2] <build> <plugins> <plugin> <a r t i f a c t I d>maven compiler plugin</ a r t i f a c t I d> <c o n f i g u r a t i o n> <source>1.6</ source> <t a r g e t>1.6</ t a r g e t> </ c o n f i g u r a t i o n> </ plugin> </ plugins> </ build> Nun können wir die Tests automatisch ausführen lassen mittels folgendem Konsolebefehl: C:\my-directory\TestProjekt>mvn test Automatische Dokumentation: Ein Qualitätsmerkmal eines guten Projektes ist auch eine gute Dokumentation. Maven hat auch für dieses Problem eine elegante Lösung bereit. Mittels eines ganz einfachen Befehl erstellt Maven eine Webseite, welche eine Projektdokumentation enthält. Der Inhalt für diese Webseite wird zum Teil über das pom.xml gesteuert. Für das Generieren einer standardisierten Projektwebsite geben wir folgenden Befehl auf der Konsole ein: C:\my-directory\TestProjekt>mvn site Im Ordner C:\my-directory\TestProjekt\target\site bendet sich die generierte Website. Wir können diese Webseite noch selber erweitern indem wir im Ordner C:\my-directory\TestProjekt\src einen neuen Ordner namens site erstellen und alle benötigten HTML-Files usw. darin platzieren. Zudem sollte man in diesem Ordner ein sogenannten SiteDescriptor anlegen site.xml. [1] Eine detailliertere Beschreibung für das individuelle Gestalten der Projektseite gibt es unter 11

12 12 Umwandeln in ein Eclipse-Projekt: Ein bereits auf der Konsole erstelltes Projekt kann jederzeit in ein Eclipse-Projekt umgewandelt und in Eclipse importiert werden. Dafür verwenden wir den Befehl: C:\my-directory\TestProjekt>mvn eclipse:eclipse 2.2 Ein kleines Projekt - mit Hilfe des Eclipse-Plugins m2eclipse Installation: Zusätzlich zum bereits im letzten Kapitel installierten Maven muss nun im Eclipse 7 das Maven-Eclipse-Plugin installiert werden. Der Link, welcher im Update-Manager von Eclipse eingegeben werden muss lautet: Sobald der Server geladen ist, werden drei Gruppen von Eclipse-Plugins angezeigt. Für unseren Zweck installieren wir Maven Integration und unter Maven Project Congurators den Punkt Maven Integrators for WTP. Nach der Installation muss Eclipse neu gestartet werden. Erstellen eines Projektes mittels Archetype: Nun versuchen wir das bereits im letzten Kapitel erstellte Projekt im Eclipse nachzubilden. Um ein Maven-Projekt im Eclipse zu erstellen wählen wir New>Other, anschliessend Maven Project und Next. Bei der nächsten Anzeige können wir nur Use default Workspace Location auswählen und dann wiederum Next klicken. Nun können wir hier ein Archetype auswählen, dazu muss der Katalog Internal aktiviert werden. Im nächsten Schritt geben wir die GroupId und die ArtifactId ein und drücken Finish. Automatischer Build: Dies geht, wie auch auf der Konsole, sehr einfach. Wir machen einen Rechtsklick auf das Projekt und wählen Run As>Maven Package. Beim ersten Mal kann dies schon etwas dauern, da die Packages heruntergeladen werden müssen. Wie bereits zuvor können wir nun im target-folder das Resultat überprüfen und nden an dieser Stelle das erwünschte.war-file, wie wir dies für eine JSP-Applikation benötigen. Hinzufügen von Dependencies: Dies kann natürlich auch über die Erweiterung des pom.xml-file geschehen, aber es gibt auch ein benutzerfreundliches GUI. Dafür klicken wir wiederum mit der rechten Maustaste auf das Projekt und wählen Maven>Add Dependency. Dort können wir nun eine Eigenschaft des gewünschten Artifacts eingeben. Dabei spielt es keine Rolle ob wir nach GroupId oder ArtifactId suchen. Für die im vorangehenden Kapitel erwähnten rmeneigenen Libraries erfassen wir nun noch das Repository. Dazu önen wir das pom.xml-file und wählen bei den Reitern unten Repositories. Nun klicken wir auf Add.., geben unsere Angaben ein und speichern die Datei. Eine Eingabemaske wie diese gibt es auch für die Plugins und Dependencies. Dazu 7 Eclipse Foundation

13 klicken wir einfach auf den entsprechenden Reiter. Nun erfassen wir noch das Jetty-Plugin. Dazu machen wir wiederum einen Rechtsklick auf dem Projekt und wählen Maven>Add Plugin. Dort suchen wir nach Jetty und fügen das Plugin hinzu. Nun können wir jetty:run ausführen. Leider gibt es hierfür kein Menü, wir wählen dazu nach dem Rechtsklick auf das Projekt Run As>Maven' Build... und geben unter Goals jetty:run ein. Danach klicken wir auf Run und sollten dasselbe Resultat erhalten wie vorhin ohne das Eclipse-Plugin und können unser Projekt im Browser önen. Automatische Tests mit JUnit: Im Eclipse müssen wir, wie bereits auf der Konsole zuerst die Java-Ordner erstellen. Dazu machen wir einen Rechtsklick auf dem Java Resources : resources-ordner und wählen New>Source Folder. Dort geben wir den Projektnamen ein und als Folder Name src/main/java und drücken Finish. Dasselbe machen wir für src/test/java. Nun können wir wie auf der Konsole Maven-Tests sehr schnell durchführen. Dazu machen wir wiederum einen Rechtsklick auf das Projekt und wählen Run As>Maven test. Automatische Dokumentation: Die Dokumentation erstellen wir im Eclipse ähnlich wie wir jetty:run ausgeführt haben über Run As>Maven build.. und geben unter Goals site ein und klicken Run. 3 Managen von Projekten 3.1 Integration mit Subversion Auf der Konsole: Maven stellt ein SCM 8 -Plugin zur Verfügung. Damit dies funktioniert müssen wir im pom.xml einige Anpassungen machen.[3] Nebst der Integration von SVN werden von SCM noch zusätzliche Dienste unterstützt: In einem ersten Schritt müssen wir das SCM kongurieren. Wir machen dies, indem wir dem pom.xml das Element <scm> hinzufügen. Wichtig: <scm> ist ein direktes Kind von <project>. <p r o j e c t> <scm> <connection> s c m : s v n : h t t p : // bfh. ch/ isem / TestProjekt / trunk </ connection> <developerconnection> s c m : s v n : h t t p : // bfh. ch/ isem / TestProjekt / trunk </ developerconnection> </scm> </ p r o j e c t> 8 Source Control Management 13

14 14 Bei der Connection geben wir die URL zu unserem SVN-Repository ein. Analog machen wir dies für developerconnection. Falls ein lokaler SVN verwendet werden soll, könnte unsere URL so aussehen: 'le://localhost/c:/mysvn/isem/testprojekt/trunk/pom.xml'. Des weiteren wird noch ein Plugin benötigt, welches wir pro Connection einzeln angeben müssen. <plugins> <plugin> <groupid>org. apache. maven. plugins</ groupid> <a r t i f a c t I d>maven scm plugin</ a r t i f a c t I d> <version>1. 0</ version> <c o n f i g u r a t i o n> <connectiontype>connection</ connectiontype> </ c o n f i g u r a t i o n> </ plugin> <plugin> <groupid>org. apache. maven. plugins</ groupid> <a r t i f a c t I d>maven scm plugin</ a r t i f a c t I d> <version>1. 0</ version> <c o n f i g u r a t i o n> <connectiontype>developerconnection</ connectiontype> </ c o n f i g u r a t i o n> </ plugin> </ plugins> Nun ist unser Projekt vorbereitet. Bevor wir aber Maven mit dem SCM- Plugin verwenden können, sollten wir die Dateien mit einem externen SVN- Client hinzufügen. [3] Wenn nun alles richtig konguriert ist und die Dateien alle hinzugefügt wurden, können wir den Test machen. Dazu navigieren wir auf Konsole in unseren Projekt-Ordner und geben folgenden Befehl ein: mvn scm:validate Damit kontrollieren wir die Angaben im pom.xml. In der Konsole müsste am Schluss Build successful stehen, dann funktioniert alles. Um unser Projekt zu aktualisieren verwenden wir den Befehl: mvn scm:update Nun verändern wir eine Datei und möchten diese ebenfalls über die Konsole wieder übertragen. Dafür verwenden wir folgenden Befehl: mvn -Dmessage="<Beschreibung der Änderung>" scm:checkin Weitere Befehle und deren genaue Bedeutung nden wir unter:

15 Mit Eclipse: Um dieselbe Funktionalität in Eclipse zu verwenden gibt es mehrere Möglichkeiten. Wir können, ohne ein weiteres Plugin zu installieren, dieselben Befehle wie auf der Konsole ausführen. Dafür klicken wir mit der rechten Maustaste aufs Projekt und wählen, genau so wie bereits beim jetty-plugin, Run As>Maven build.., geben unter Goals den Befehl ein und klicken auf Run. (Befehl ohne mvn) Es gibt auch für die SVN-Integration eine andere Lösung. Dafür gibt es mehrere Eclipse-Plugins. Wir haben uns für Subclipse entschieden. Die URL für den Update-Manager von Eclipse lautet: Nun önen wir Window>Preferences, önen den Eintrag Team und wählen SVN. Anschliessend erscheint eine Fehlermeldung. Diese können wir bestätigen und stellen dann das SVN-Interface auf SVNKit (Pure Java). Danach klicken wir OK. Als erstes müssen wir unser SVN-Repository angeben. Dafür önen wir Window>Open Perspective>Other... und im erscheinenden Fenster SVN Repository Exploring. In dieser neuen Ansicht können wir in der linken Spalte rechts klicken und wählen dort New>Repository Location. Nun können wir unsere Repository-URL angeben und werden mittels Pop-Up zur Eingabe des Passwortes aufgefordert. Anschliessend erscheint die Ordner-Struktur in der linken Spalte. Dort suchen wir den trunk-ordner unseres Projektes und machen darauf einen Rechtsklick und wählen Checkout. Jetzt können wir einen Projektnamen und die Version wählen. Falls wir nicht im aktuellen Workspace arbeiten möchten, können wir auch mit Next dies noch anpassen. Anschliessend drücken wird Finish. Das Projekt wird nun in unseren Workspace importiert. Jetzt wechseln wir wieder die View. Für unser Beispiel wäre dies Window>Preferences>Other... und Web. Dort sehen wir unser Maven-Projekt. Die SVN-Befehle nden wir jeweils mittels Rechtsklick auf dem Projekt und Team Arbeiten mit Subprojekten Wie unter dem Abschnitt Convention over Conguration im Kapitel 1.4 Prinzipien von Maven beschrieben, macht es Sinn grössere Projekte in Subprojekte zu unterteilen. Maven stellt einen Ansatz zur Verfügung, damit diese Subprojekte trotzdem zentral gemanaged werden können. Die Idee ist, dass man aus den verschiedenen Subprojekten sogenannte Module und, für das Handling aller Module, ein sogenanntes Multi-module Project macht. Gehen wir nun als Beispiel davon aus, dass wir eine Webapplikation haben, die in zwei Module aufgeteilt wurde: com.test.coolapplication.presentation und com.test.coolapplication.business. Als dritten Aspekt benötigen wir noch ein sogenanntes Parent-Project, welches die Module enthält: com.test.coolapplication [2] Das Parent-Project: Als erstes werfen wir einen Blick auf das Parent-Project. Dieses enthält ein pom.xml: <p r o j e c t>

16 16 <modelversion> </ modelversion> <groupid>com. t e s t</ groupid> <a r t i f a c t I d>c o o l a p p l i c a t i o n</ a r t i f a c t I d> <packaging>pom</ packaging> <version>1. 0</ version> <name>parent Project f o r our Topapplication</name> <modules> <module>business</module> <module>p r e s e n t a t i o n</module> </ modules> <dependencies> <dependency> <groupid>j u n i t</ groupid> <a r t i f a c t I d>j u n i t</ a r t i f a c t I d> <version>4. 5</ version> <scope>t e s t</ scope> </ dependency> </ dependencies> </ p r o j e c t> Ein interessanter Punkt ist, dass dieses Parent-Project kein.jar-file oder ein anderes Package erstellt. Der Eintrag pom als <packaging> deniert, dass dieses pom.xml andere Maven-Projekte referenziert. Unter <modules> werden alle Module angegeben. Jedes Modul referenziert ein Subdirectory relativ zum Parent-Project. Konkret heisst das, dass es im Ordner coolapplication zwei Ordner namens presentation und business gibt. Da wir die Logik vom Business-Tier in dem Presentation-Tier verwenden wollen, müssen die Module in dieser bestimmten Reihenfolge deniert werden. Alles was nach <modules> angegeben wird, wird von den Subprojekten geerbt. Das heisst konkret, dass com.test.coolapplication.presentation und com.test.coolapplication.business automatisch die dependency junit beinhalten.[2] Die Subprojekt / Module: In den Subprojekten müssen wir nun noch angeben, welches das entsprechende Parent-Project ist. Wir schauen uns zuerst das Modul: com.test.coolapplication.business an. Die Anpassungen werden natürlich auch im pom.xml vorgenommen: <p r o j e c t> <modelversion> </ modelversion> <pa rent> <groupid>com. t e s t</ groupid> <a r t i f a c t I d>c o o l a p p l i c a t i o n</ a r t i f a c t I d> <packaging>j a r</ packaging>

17 17 <version>1. 0</ version> </ parent> <groupid>com. t e s t. c o o l a p p l i c a t i o n</ groupid> <a r t i f a c t I d>b usiness</ a r t i f a c t I d> <packaging>j a r</ packaging> <version>1. 0</ version> <name>business Tier of our Project</name> </ p r o j e c t> Innerhalb des Elements <parent> geben wir nun die Referenzierung zu unserem Parent-Project an. Im zweiten Modul, com.test.coolapplication.presentation, möchten wir zusätzlich noch die Klassen von dem Business-Tier, com.test.coolapplication.business, ansprechen. Nachfolgend zeigen wir, wie das pom.xml von com.test.coolapplication.presentation aussehen muss: <p r o j e c t> <modelversion> </ modelversion> <pa rent> <groupid>com. t e s t</ groupid> <a r t i f a c t I d>c o o l a p p l i c a t i o n</ a r t i f a c t I d> <packaging>war</ packaging> <version>1. 0</ version> </ parent> <groupid>com. t e s t. c o o l a p p l i c a t i o n</ groupid> <a r t i f a c t I d>p r e s e n t a t i o n</ a r t i f a c t I d> <packaging>j a r</ packaging> <version>1. 0</ version> <name>presentation Tier of our Project</name> <dependencies> <dependency> <groupid>com. t e s t. c o o l a p p l i c a t i o n</ groupid> <a r t i f a c t I d>b usiness</ a r t i f a c t I d> <version>1. 0</ version> </ dependency> </ dependencies> </ p r o j e c t> Wir erkennen, dass man das andere Modul wie eine ganz normale dependency in com.test.coolapplication.presentation einbinden kann.[2] Builden eines Multimodule-Project: Um jetzt das gesamte Projekt zu builden müssen wir auf der Konsole folgenden Befehl eingeben: C:\my-directory\coolapplication>mvn clean install

18 18 Maven führt nun folgende Schritte aus: 1. Maven lädt das pom.xml des Parent-Project und alloziert die pom.xml's von allen Modulen 2. Maven übergibt alle pom.xml's dem Maven Reactor 3. Der Maven Reactor analysiert die Abhängigkeiten zwischen den einzelnen Modulen und stellt sicher, dass alle Module in der richtigen Reihenfolge kompiliert werden 4. Maven führt für jedes Modul, in der richtigen Reihenfolge, ein mvn clean install aus. Mit Hilfe des gleichen Vorgehens können auch andere Maven-Befehle ausgeführt werden.[2] 3.3 Automatischer Build-Prozess mit Buildserver (Maestro) Ein Buildserver hat die Fähigkeit in einem gewissen Zeitintervall immer wieder einen neuen Build unseres Projektes anzulegen. Man spricht dabei auch von Continuous Integration. Nebst dem, dass der Buildserver den automatischen Build übernimmt, hat er in der Regel auch noch andere Fähigkeiten. So kann er zum Beispiel auch Tests ausführen, Dokumentationen generieren und die Entwickler benachrichtigen, wenn irgend etwas fehlschlagen sollte. Das Verwenden von regelmässigen Buildzyklen kann den Entwicklungsprozess positiv beeinussen. Oft wählt man die Buildzyklen so, dass jede Nacht ein neuer Build angelegt wird. Man spricht dabei auch von einem Nightly-Build. Auch kürzere Zeitabstände zwischen den Zyklen können Sinn machen. So wir durch Continuous Integration eine bessere Entwicklungskultur unterstützt, und die Teams können Änderungen in kleineren Iterationen vornehmen.[1] Wir zeigen nun die Verwendung des Buildservers Maestro von Exist 9. Wichtig ist zu sagen, dass in diesem Dokument nicht beschrieben wird, wie man Maestro installiert und konguriert. Wir fokussieren uns nur auf die Verwendung von Maestro im Zusammenhang mit Maven 2.0. Für unsere Dokumentation verwendeten wir die Version 1.5 von Maestro.[1] Aufnehmen eines neuen Projektes: Damit Maestro ein Maven-Projekt verwalten kann, muss dieses Maven-Projekt auf einem SVN-Repository hinterlegt werden. Damit alles reibungslos funktioniert, sollte sich dieses Projekt in einem sogenannten trunk Ordner benden. Zudem sollte das pom.xml ein direktes Kind vom Ordner trunk sein. Also: trunk\pom.xml. Das SVN-Repository sollte über eine URL erreichbar sein (z.b. 'http://svn.bfh.ch/isem/testprojekt/trunk') oder sich auf der gleichen Maschine wie der ServletContainer von Maestro benden. Bevor wir das Projekt registrieren können, müssen wir in unserem pom.xml diverse Anpassungen vornehmen. Wie man den SVN-Zugang über Maven realisiert wurde bereits unter 3.1 Integration mit Subversion beschrieben. Als nächsten Schritt müssen wir ein Element cimanagement hinzufügen. 9 Exist

19 <p r o j e c t> <cimanagement> <system>continuum</ system> <u r l>h t t p : // l o c a l h o s t : /continuum</ u r l> <n o t i f i e r s> <n o t i f i e r> <type>mail</ type> <c o n f i g u r a t i o n> ch</ address> </ c o n f i g u r a t i o n> </ n o t i f i e r> </ n o t i f i e r s> </ cimanagement> </ p r o j e c t> Unter dem Element <url> geben wir die URL von unserer Maestro Webapplikation an. Als Kinder des Elementes <notifiers> können verschiedene Systeme angegeben werden, die bei Problemen benachrichtigt werden sollen. In unserem Beispiel würde eine an gesendet. Durch das Hinzufügen eines weiteren <notifier>-eintrags, können weitere -Adressen angegeben werden.[1] Nun können wir noch ein <distributionmanagement>-element hinzufügen. Darin können wir angeben wohin die Site, welche das Projekt dokumentiert, deployed werden soll. Zum Beispiel könnte Maestro nach jedem Build, die Webseite mit der Projektdokumentation in einen Tomcat deployen.[1] <p r o j e c t> <distributionmanagement> <s i t e> <id>website</ id> <u r l> f i l e : // l o c a l h o s t /C:/Tomcat6/webapps/ TestProjekt / s i t e </ u r l> </ s i t e> </ distributionmanagement> </ p r o j e c t> Bevor wir mit Maestro arbeiten können, benötigen wir noch ein Plugin. Dazu fügen wir folgende Plugin-Denition in unserem pom.xml hinzu: <p r o j e c t> <plugins> <plugin> <a r t i f a c t I d>maven s i t e plugin</ a r t i f a c t I d> <c o n f i g u r a t i o n> 19

20 20 <l o c a l e s>en</ l o c a l e s> </ c o n f i g u r a t i o n> </ plugin> </ plugins> </ p r o j e c t> Nun endlich beginnt die eigentliche Arbeit mit Maestro. Um nun ein neues Projekt zu registrieren, müssen diverse Schritte ausgeführt werden. Als erstes müssen wir uns auf dem Webinterface von Maestro einloggen. Sobald wir eingeloggt sind, müssen wir im Hauptmenü oben rechts auf Build Management klicken. Abbildung 3: Auswählen von Build Management im Hauptmenü des Maestro Webinterfaces In dem neu erschienenen Dialog bekommt man eine Übersicht über alle Project Groups. Wir wählen nun die Project Group, zu welcher wir unser Projekt hinzufügen wollen. Wir machen dies indem wir auf den Namen der Project Group klicken. Anschliessend erscheint eine neue Seite, welche eine Übersicht über alle Projekte zeigt, die sich bereits in dieser Project Group benden. Unter der Sparte Group Actions bendet sich eine Schaltäche add. Diese klicken wir um ein neues Projekt hinzuzufügen. Bevor wir dies tun, müssen wir aber sicherstellen, dass in der DropDown-Box Add M2 Project selektiert ist. Abbildung 4: Klicken auf add für das Hinzufügen eines neuen Projektes In dem neuen Dialog können wir nun die URL zu unserem pom.xml von dem Projekt eingeben. Wenn sich das Projekt auf einem SVN bendet, der über HTTP zugänglich ist, können wir diese URL eingeben (z.b. 'http://svn-repos.bfh.ch/ti/iseminar/testprojekt/trunk/pom.xml'). Anders funktioniert es, wenn das Projekt sich auf einem SVN bendet, welcher auf der gleichen Maschine installiert ist wie der ServletContainer von Maestro. In diesem Fall könnte unsere URL so aussehen: 'le://localhost/c:/mysvn/ti/iseminar/testprojekt/trunk/pom.xml'.

21 21 Abbildung 5: Eingabemaske für das Hinzufügen eines neuen Projektes Falls Subversion eine Authentizierung verlangt, müsste diese Angaben unter den Feldern Username und Password angegeben werden. Anschliessend klicken wir unten links auf die Add Schaltäche. In der Übersicht unserer Project Group sollte nun das neue Projekt vorhanden sein. Der Namen des Projektes entspricht der Denition im pom.xml. Abbildung 6: Das neue Projekt wurde erfolgreich hinzugefügt

22 22 Manuelles Starten eines Build: Um manuell einen Build zu starten, klickt man - in der Übersicht der entsprechenden Project Group - auf das Icon Build Now des gewünschten Projektes: Abbildung 7: Manuelles Starten eines Builds Durch Klick auf den Projektnamen (TestProjekt Maven Webapp) kommt man auf die Projektübersichtsseite. Klickt man auf dieser Seite auf den Tab Builds, bekommt man eine Übersicht über alle Builds die ausgeführt wurden. Durch ein Klick auf den Link Result, kann man die Resultate ansehen. Wenn ein Build gerade ausgeführt wird, kann man den Vorgang auf der Result-Seite mitverfolgen. Abbildung 8: Übersicht über alle Builds

URT Eclipse All in one

URT Eclipse All in one URT Eclipse All in one Das Paket Eclipse All in one enthält Programme und Einstellungen, die zum Programmieren mit Eclipse in Zusammenarbeit mit Subversion und ANT benötigt werden. Dieses Paket dient als

Mehr

Softwareprojekte mit Kultur

Softwareprojekte mit Kultur Maven Softwareprojekte mit Kultur Patrick Zeising Konfigurationsmanagement Motivation Projektaufbau unterschiedlich Abläufe zum Übersetzen und Deployen unterschiedlich Verwendete Tools, Prozesse, Skripte

Mehr

Einführung in Maven und GWT

Einführung in Maven und GWT Einführung in Maven und GWT Prof. Christoph Knabe Beuth-Hochschule Berlin 08.05.2014 Gliederung Motivation für Build-Werkzeug Maven-Ziele, Begriffe Maven-Benutzung in 5 min Maven-Vorteile GWT-Ziele GWT-Projekt

Mehr

Automatischer Build mit Maven 2

Automatischer Build mit Maven 2 Automatischer Build mit Maven 2 Stefan Scheidt OPITZ CONSULTING GmbH Ihr Referent Stefan Scheidt Senior Architekt bei der OPITZ CONSULTING GmbH Seit über 10 Jahren im Oracle- und Java-Umfeld tätig Schwerpunkte:

Mehr

Maven 2 Softwareprojekte mit Kultur

Maven 2 Softwareprojekte mit Kultur Maven 2 Softwareprojekte mit Kultur Patrick Zeising 28.05.2010 Motivation Projekte unterscheiden sich stark im Aufbau Abläufe beim Übersetzen und Deployen unterscheiden sich stark

Mehr

Verteilte Systeme (WS 2013/14) Übung 0: Einführung in Maven und Git. Oliver Kleine Institut für Telematik, Universität zu Lübeck

Verteilte Systeme (WS 2013/14) Übung 0: Einführung in Maven und Git. Oliver Kleine Institut für Telematik, Universität zu Lübeck Verteilte Systeme (WS 2013/14) Übung 0: Einführung in Maven und Git Oliver Kleine Institut für Telematik, Universität zu Lübeck Build-Management in JAVA 3 Build-Management? Wozu? Traditionelle manuelle

Mehr

Enigma2 Plugin Entwicklung mit Eclipse

Enigma2 Plugin Entwicklung mit Eclipse Enigma2 Plugin Entwicklung mit Eclipse Enigma2 Plugin Entwicklung mit Eclipse 1/15 Inhaltsverzeichnis 1 ÜBER... 3 2 INSTALLATION... 4 2.1 INSTALLATION VON ECLIPSE... 4 2.2 INSTALLATION VON PYDEV... 4 3

Mehr

Buildsystem. Maven & Scons. Controls Entwicklungsforum Januar 2012

Buildsystem. Maven & Scons. Controls Entwicklungsforum Januar 2012 Buildsystem Maven & Scons Controls Entwicklungsforum Januar 2012 1 2 a call from the past Binary Repository Speichern von Artefakten (z.b. Shared Library und zugehörige Header) Versionierung von Artefakten

Mehr

Anleitung zur Webservice Entwicklung unter Eclipse

Anleitung zur Webservice Entwicklung unter Eclipse Entwicklungsumgebung installieren Sofern Sie nicht an einem Praktikumsrechner arbeiten, müssen Sie ihre Eclipse-Umgebung Webservice-fähig machen. Dazu benötigen Sie die Entwicklungsumgebung Eclipse for

Mehr

Ant in Eclipse Starthilfe

Ant in Eclipse Starthilfe IN DIESER KURSEINHEIT Einleitung o Um was geht's eigentlich? Hello World o Das Ant Skript Mehrere Targets und Properties o Hello World Ausgabe Ant Launch Configurations o Definition o Modifikation o Nutzung

Mehr

Apps-Entwicklung mit Netbeans

Apps-Entwicklung mit Netbeans JDroid mit Netbeans Seite 1 Apps-Entwicklung mit Netbeans Version 2.2, 30. April 2013 Vorbereitungen: 1. JDK SE neuste Version installieren, (http://www.oracle.com/technetwork/java/javase/downloads/index.html)

Mehr

Maven und Maestro Build Server

Maven und Maestro Build Server Maven und Maestro Build Server Matthias Hofstetter 1 and Christof Luethi 2 Bern University of Applied Sciences CH-2500 Biel/Bienne Switzerland hofsm1@bfh.ch, 1 luthc1@bfh.ch 2 Zusammenfassung In diesem

Mehr

Consultant & Geschäftsführer, enpit consulting OHG E-Mail: ugb@enpit.de

Consultant & Geschäftsführer, enpit consulting OHG E-Mail: ugb@enpit.de ADF Spotlight - Entwicklungswerkzeuge & - methoden - ADF 12c mit Git, Maven & Co. - Status Quo Ulrich Gerkmann-Bartels Consultant & Geschäftsführer, enpit consulting OHG E-Mail: ugb@enpit.de +++ Bitte

Mehr

Programmieren in Java

Programmieren in Java Programmieren in Java Vorlesung 12: Metawissen Java Bibliotheken, Maven Robert Jakob Albert-Ludwigs-Universität Freiburg, Germany SS 2013 Robert Jakob (Univ. Freiburg) Programmieren in Java JAVA 1 / 33

Mehr

Code generieren mit Eclipse und oaw HowTo

Code generieren mit Eclipse und oaw HowTo Innovator 11 excellence Code generieren mit Eclipse und oaw Eclipse und oaw konfigurieren und zur Code-Generierung mit xpand-schablonen nutzen Albert Scheuerer, René Beckert HowTo www.mid.de Inhaltsverzeichnis

Mehr

Seminar - Bericht. Maven Project Management & Comprehension. Fachhochschargau Departement Technik Studiengang Informatik. Gruppe Jonas Weibel

Seminar - Bericht. Maven Project Management & Comprehension. Fachhochschargau Departement Technik Studiengang Informatik. Gruppe Jonas Weibel Seminar - Bericht Maven Project Management & Comprehension Fachhochschargau Departement Technik Studiengang Informatik Gruppe Jonas Weibel Betreuender Dozent Prof. Dr. Dominik Gruntz Windisch, im Januar

Mehr

Den Entwicklungsprozess im Griff mit Maven, Jenkins und Git

Den Entwicklungsprozess im Griff mit Maven, Jenkins und Git Sourcetalktage 2012 Referent: Tobias Heisecke ( theisecke@googlemail.com ) - seit 1995 bei der ZAD-GmbH in Northeim ( Dienstleistungsrechenzentrum im Gesundheitswesen ) - Forderungseinzug für Krankentransport-

Mehr

Bedienungsanleitung für den SecureCourier

Bedienungsanleitung für den SecureCourier Bedienungsanleitung für den SecureCourier Wo kann ich den SecureCourier nach der Installation auf meinem Computer finden? Den SecureCourier finden Sie dort, wo Sie mit Dateien umgehen und arbeiten. Bei

Mehr

Kurzanleitung zu. von Daniel Jettka 18.11.2008

Kurzanleitung zu. von Daniel Jettka 18.11.2008 Kurzanleitung zu Tigris.org Open Source Software Engineering Tools von Daniel Jettka 18.11.2008 Inhaltsverzeichnis 1.Einführung...1 2.Das Projektarchivs...3 2.1.Anlegen des Projektarchivs...3 2.2.Organisation

Mehr

1. Einführung. 2. Vorbereitung zur Installation. 1.1 Eclipse

1. Einführung. 2. Vorbereitung zur Installation. 1.1 Eclipse 1. Einführung 1.1 Eclipse Die Eclipse ist eine kostenlose integrierte Entwicklungsumgebung oder auch IDE genannt, (Abkürzung IDE, engl. Integrated development enviroment). Sie ist eine grafische Benutzeroberfläche

Mehr

Nutzung der VDI Umgebung

Nutzung der VDI Umgebung Nutzung der VDI Umgebung Inhalt 1 Inhalt des Dokuments... 2 2 Verbinden mit der VDI Umgebung... 2 3 Windows 7... 2 3.1 Info für erfahrene Benutzer... 2 3.2 Erklärungen... 2 3.2.1 Browser... 2 3.2.2 Vertrauenswürdige

Mehr

JDroidLib mit Eclipse (Mac/Linux/Windows)

JDroidLib mit Eclipse (Mac/Linux/Windows) JDroidLib mit Eclipse (Mac/Linux/Windows) Version 1.3, 25. März 2013 (Unter Windows besser die ADT-Bundle Version installieren, siehe entsprechende Anleitung) Vorbereitungen: 1. JDK SE neuste Version installieren,

Mehr

Der Weisheit letzter Schluss:

Der Weisheit letzter Schluss: Der Weisheit letzter Schluss: Maven 2 in der Java Entwicklung Web Site: www.soebes.de Blog: blog.soebes.de Email: info@soebes.de Dipl.Ing.(FH) Karl Heinz Marbaise Agenda 1. Was ist Maven? 2. Features von

Mehr

Referent: Thomas Storch (FI für Anwendungsentwicklung, 1. Lj.) Vortrag: Apache Maven. Datum: 25.04.2012. Deutsche Software Engineering & Research GmbH

Referent: Thomas Storch (FI für Anwendungsentwicklung, 1. Lj.) Vortrag: Apache Maven. Datum: 25.04.2012. Deutsche Software Engineering & Research GmbH Referent: Thomas Storch (FI für Anwendungsentwicklung, 1. Lj.) Vortrag: Apache Maven Datum: 25.04.2012 Deutsche Software Engineering & Research GmbH Steinstraße 11 02826 Görlitz Germany Telefon: +49 35

Mehr

Maven Tycho. Google Guice. Mylyn für Modelle. 7. bis 11. November 2011. www.jax.de. Eclipse meets. Plus CD! The Westin Grand München Arabellapark

Maven Tycho. Google Guice. Mylyn für Modelle. 7. bis 11. November 2011. www.jax.de. Eclipse meets. Plus CD! The Westin Grand München Arabellapark M Plus CD! JE TZ ER T N! 4.11 Deutschland 9,80 Österreich 10,80, Schweiz sfr 19,20 4.2011 KE Neue Serie: The Making of an Eclipse Project eclipse magazin VO R The Westin Grand München Arabellapark Anmeldung

Mehr

Eclipse und Java Einheit 01: Einführung in Eclipse

Eclipse und Java Einheit 01: Einführung in Eclipse Eclipse und Java Einheit 01: Einführung in Eclipse Laith Raed Ludwig-Maximilians-Universität München Institut für Informatik: Programmierung und Softwaretechnik Prof.Wirsing Inhaltsverzeichnis 1 Hintergrundwissen

Mehr

Softwaretests. Werkzeuge zur Automatisierung. Thementag Wer testet, ist feige. Autor: für 24.06.2009. Markus Alvermann.

Softwaretests. Werkzeuge zur Automatisierung. Thementag Wer testet, ist feige. Autor: für 24.06.2009. Markus Alvermann. Softwaretests Werkzeuge zur Automatisierung für Thementag Wer testet, ist feige 24.06.2009 Autor: Markus Alvermann Seite 2 / 39 Agenda Motivation Versionsverwaltung Build-Tools Unit-Tests GUI-Tests Continuous

Mehr

RÖK Typo3 Dokumentation

RÖK Typo3 Dokumentation 2012 RÖK Typo3 Dokumentation Redakteur Sparten Eine Hilfe für den Einstieg in Typo3. Innpuls Werbeagentur GmbH 01.01.2012 2 RÖK Typo3 Dokumentation Inhalt 1) Was ist Typo3... 3 2) Typo3 aufrufen und Anmelden...

Mehr

Das Interceptor Muster

Das Interceptor Muster Das Interceptor Muster Implementierung des Interceptor Musters basierend auf OSGi and Friends Benjamin Friedrich Hochschule für Technik und Wirtschaft des Saarlandes Praktische Informatik - Entwurfsmuster

Mehr

Hex Datei mit Atmel Studio 6 erstellen

Hex Datei mit Atmel Studio 6 erstellen Hex Datei mit Atmel Studio 6 erstellen Es werden generell keine Atmel Studio Dateien ins Repository geladen, da jeder seine Dateien an anderen Orten liegen hat und weil nicht jeder das Atmel Studio 6 benutzt.

Mehr

Apps-Entwicklung mit Eclipse

Apps-Entwicklung mit Eclipse JDroid mit Eclipse Seite 1 Apps-Entwicklung mit Eclipse Version 1.1, 30. April 2013 Vorbereitungen: 1. JDK installieren JDK SE neuste Version (64 oder 32 Bit) herunterladen und installieren (http://www.oracle.com/technetwork/java/javase/downloads/index.html)

Mehr

Projektmanagement mit Maven

Projektmanagement mit Maven Projektmanagement mit Maven (Ausarbeitung des Seminars vom 9.12.2008) von Sebastian Karbe(ii5849@fh-wedel.de) (Technische Informatik) Inhaltsverzeichnis 1 Grundlegendes 2 1.1 Entstehung.................................

Mehr

Erstellung eines SharkNet Installers für Windows mit Inno Setup Compiler 5.4.2

Erstellung eines SharkNet Installers für Windows mit Inno Setup Compiler 5.4.2 Erstellung eines SharkNet Installers für Windows mit Inno Setup Compiler 5.4.2 1. Benötigte Software Zur Erstellung des Installers wird folgende Software benötigt. Es wird sich in dieser Dokumentation

Mehr

JBuilderX: Installation und Kurzanleitung (Windows)

JBuilderX: Installation und Kurzanleitung (Windows) JBuilder X Seite 1 JBuilderX: Installation und Kurzanleitung (Windows) 1. JBuilder installieren Eine Gratis-Version kann von der Webseite www.borland.de heruntergeladen werden. Systemvoraussetzungen: 256

Mehr

Erste Schritte mit dem Qt Creator

Erste Schritte mit dem Qt Creator GUI-Anwendungen mit C++-Bibliothek Qt Qt-Creator 1 Erste Schritte mit dem Qt Creator Diese Beschreibung wendet sich an Anfänger, die noch nie mit der Entwicklungsumgebung (IDE) Qt Creator gearbeitet haben.

Mehr

Installationsanleitung Tivoli Storage Manager für Mac OS

Installationsanleitung Tivoli Storage Manager für Mac OS 11. März 2009, Version 1.0 Installationsanleitung für Mac OS X Verwaltungsdirektion Informatikdienste Installationsanleitung für Mac OS Inhaltsverzeichnis...1 Installation... 1 Voraussetzungen...1 Version

Mehr

Zeiterfassung-Konnektor Handbuch

Zeiterfassung-Konnektor Handbuch Zeiterfassung-Konnektor Handbuch Inhalt In diesem Handbuch werden Sie den Konnektor kennen sowie verstehen lernen. Es wird beschrieben wie Sie den Konnektor einstellen und wie das System funktioniert,

Mehr

Allgemeines. Architektur der Anwendung. Server starten. Anmeldung

Allgemeines. Architektur der Anwendung. Server starten. Anmeldung Allgemeines Architektur der Anwendung Grundsätzlich führen viele Wege nach Rom bzw. es gibt nicht den einen Weg, wie die gestellte Aufgabe mit Magnolia gelöst werden muss. Es wäre problemlos möglich, eine

Mehr

Outlook - CommuniGate Pro Schnittstelle installieren. Outlook - Elemente freigeben. Outlook - Freigegebene Elemente öffnen

Outlook - CommuniGate Pro Schnittstelle installieren. Outlook - Elemente freigeben. Outlook - Freigegebene Elemente öffnen Microsoft Outlook 1 Nutzung der Groupware mit Microsoft Outlook 1.1 Outlook - CommuniGate Pro Schnittstelle installieren 4 1.2 Outlook - Elemente freigeben 11 1.3 Outlook - Freigegebene Elemente öffnen

Mehr

Build Management. Präsentation von Daniel Mies daniel.mies@1und1.de

Build Management. Präsentation von Daniel Mies daniel.mies@1und1.de Build Management Präsentation von Daniel Mies daniel.mies@1und1.de Agenda 1&1 Member of United Internet Build Management mit Maven Motivation Kompilieren & Paketieren Dependency Management Software Analyse

Mehr

Project Server 2010 in SharePoint 2010 integrieren

Project Server 2010 in SharePoint 2010 integrieren [Geben Sie Text ein] Project Server 2010 in SharePoint 2010 integrieren Project Server 2010 in SharePoint 2010 integrieren Inhalt Windows Server Vorbereitung... 2 Project Server 2010 Vorbereiten... 3 Project

Mehr

Erste Schritte mit Eclipse

Erste Schritte mit Eclipse Erste Schritte mit Eclipse März 2008, KLK 1) Java Development Kit (JDK) und Eclipse installieren In den PC-Pools der HAW sind der JDK und Eclipse schon installiert und können mit dem Application Launcher

Mehr

Installation/Einrichtung einer Datenbank für smalldms

Installation/Einrichtung einer Datenbank für smalldms Einleitung In den folgenden Seiten werden wir uns damit beschäftigen eine lokale Installation einer MySQL- Datenbank vorzunehmen, um auf dieser Datenbank smalldms aktivieren zu können. Wir werden das XAMPP-Paket

Mehr

Build-Prozesse für Geschäftsanwendungen mit Apache Maven

Build-Prozesse für Geschäftsanwendungen mit Apache Maven Build-Prozesse für Geschäftsanwendungen mit Apache Maven Was sind eigentlich Geschäftsanwendungen? Geschäftsanwendungen (z.b. ERP) potenziell viele Benutzer in unterschiedlichen Rollen und unterschiedlichen

Mehr

Konfigurationslanleitung für J2EE und Eclipse im KBS-Pool

Konfigurationslanleitung für J2EE und Eclipse im KBS-Pool Konfigurationslanleitung für J2EE und Eclipse im KBS-Pool JBoss vorbereiten Wir haben ein zip-archiv mit JBoss 4.0.5 in /opt/jboss-4.0.5.zip hinterlegt. Entpacken Sie dieses in ihrem Homeverzeichnis an

Mehr

Buildwerkzeuge für Javaprojekte. Christian Bunse Institut für Informatik 03.07.2008

Buildwerkzeuge für Javaprojekte. Christian Bunse Institut für Informatik 03.07.2008 Buildwerkzeuge für Javaprojekte Christian Bunse Institut für Informatik 03.07.2008 Inhalt Der Build Besonderheiten von Javaprojekten Ziele von Buildwerkzeugen Continuous Integration Vorstellung von Buildwerkzeugen

Mehr

Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren

Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren Installation einer C++ Entwicklungsumgebung unter Windows --- TDM-GCC und Eclipse installieren 1 32- oder 64-bit Windows feststellen In den nachfolgenden Schritten ist es nötig, dass Sie wissen, ob Sie

Mehr

4 Die FrontPage-Website

4 Die FrontPage-Website 4 Die FrontPage-Website Ziele dieses Kapitels A Sie lernen die Struktur einer Website kennen. A Sie können Websites verschachteln. A Sie können Websites konvertieren. Microsoft Office Frontpage 2003 Einführung

Mehr

Userhandbuch. Version B-1-0-2 M

Userhandbuch. Version B-1-0-2 M Userhandbuch Version B-1-0-2 M Inhaltsverzeichnis 1.0 Was bietet mir SERVRACK?... 3 1.1 Anmeldung... 3 1.2 Passwort vergessen?... 3 1.3 Einstellungen werden in Realtime übernommen... 4 2.0 Die SERVRACK

Mehr

Installationsanleitung unter Windows

Installationsanleitung unter Windows Installationsanleitung unter Windows Verwenden Sie zur Installation ein Benutzerkonto mit Administratorberechtigung! 1. Download des aktuellen Backup-Client und des Sprachpakets: 1.1 Windows: ftp://ftp.software.ibm.com/storage/tivoli-storage-management/maintenance/client/v6r2/windows/

Mehr

Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten

Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten Facebook I-Frame Tabs mit Papoo Plugin erstellen und verwalten Seit Anfang Juni 2012 hat Facebook die Static FBML Reiter deaktiviert, so wird es relativ schwierig für Firmenseiten eigene Impressumsreiter

Mehr

NetBeans Installation für Handy-Programmierung

NetBeans Installation für Handy-Programmierung Netbeans-Installation für Handy-Programmierung Seite 1 NetBeans Installation für Handy-Programmierung 1. Installation Die Netbeans-Installation setzt voraus, dass JDK 6 bereits auf dem Rechner installiert

Mehr

http://bcloud.brennercom.it/de/brennercom-b-cloud/applikationen/26-0.html

http://bcloud.brennercom.it/de/brennercom-b-cloud/applikationen/26-0.html b.backup Handbuch Windows Dieser Abschnitt beschreibt die grundlegenden Funktionen des Backup Client und die Vorgehensweise für die Installation und Aktivierung. Außerdem wird erläutert, wie man eine Datensicherung

Mehr

:: Anleitung First Connection 1cloud.ch ::

:: Anleitung First Connection 1cloud.ch :: :: one source ag :: Technopark Luzern :: D4 Platz 4 :: CH-6039 Root-Längenbold LU :: :: Fon +41 41 451 01 11 :: Fax +41 41 451 01 09 :: info@one-source.ch :: www.one-source.ch :: :: Anleitung First Connection

Mehr

S ecure File E xchange K urzanleitung

S ecure File E xchange K urzanleitung S ecure File E xchange K urzanleitung Inhalt Rollendefinitionen... 3 Neuen Ordner anlegen... 9 Hinzufügen oder Hochladen einer neuen Datei... 11 Datei löschen... 13 Dokument herunterladen... 14 Datei

Mehr

Installation des IIS-Servers auf Windows XP Professional

Installation des IIS-Servers auf Windows XP Professional Installation des IIS-Servers auf Windows XP Professional 25. Februar 2007 In diesem HowTo wird kurz beschrieben, wie man den, standardmäÿig auf einer Windows XP Professional Maschine vorhandenen, IIS-Server

Mehr

Migrationsanleitung von 2.0 auf 2.1

Migrationsanleitung von 2.0 auf 2.1 Die wichtigste Neuerung von 2.0 auf 2.1 aus Sicht der Anwendungs- Migration ist die Verwendung von Maven. Mit Maven holt sich die Anwendung alle notwendigen Bibliotheken in den jeweils angegebenen Versionen

Mehr

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE

2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2. ERSTELLEN VON APPS MIT DEM ADT PLUGIN VON ECLIPSE 2.1 Die Einrichtung der Benutzeroberfläche Das Einrichten einer Android-Eclipse-Entwicklungsumgebung zur Android-Entwicklung ist grundsätzlich nicht

Mehr

Fork Leitfaden. BibApp Android

Fork Leitfaden. BibApp Android Fork Leitfaden BibApp Android letzte Aktualisierung: 24. April 2013 Inhaltsverzeichnis Inhaltsverzeichnis 1 Einleitung 2 2 Eclipse Projekt 2 3 Abhängigkeiten 2 4 Konfiguration 3 4.0.1 Paketname...............................

Mehr

Informatik I Tutorial

Informatik I Tutorial ETH Zürich, D-INFK/D-BAUG Herbstsemester 2015 Dr. Martin Hirt Daniel Jost Informatik I Tutorial Dieses Tutorial hat zum Ziel, die notwendigen Tools auf dem eigenen Computer zu installieren, so dass ihr

Mehr

B) Klassenbibliotheken Turtle und Util (GPanel, Console) installieren Ein Unterverzeichnis classes auf der Festplatte erstellen, z.b.

B) Klassenbibliotheken Turtle und Util (GPanel, Console) installieren Ein Unterverzeichnis classes auf der Festplatte erstellen, z.b. jcreator Seite 1 JCreator (Windows) 1. Installation Die wichtigsten Installationsschritte: A) Java 2 Development Kit J2SE 5.0 RC installieren. Die aktuelle Installationsdatei (jdk-1_5_09-rc-windows-i586.exe)

Mehr

Einrichten des Follow Me -Drucksystems unter OS X

Einrichten des Follow Me -Drucksystems unter OS X Einrichten des Follow Me -Drucksystems unter OS X 1 Druckertreiber Herunterladen Von Hause aus bietet OS X keine Unterstützung für die professionellen Canon Drucker, welche hier an der Hochschule Albstadt-Sigmaringen

Mehr

Installationsanleitung CLX.PayMaker Office

Installationsanleitung CLX.PayMaker Office Installationsanleitung CLX.PayMaker Office Inhaltsverzeichnis 1. Installation und Datenübernahme... 2 2. Erste Schritte Verbindung zur Bank einrichten und Kontoinformationen beziehen... 4 3. Einrichtung

Mehr

B) Klassenbibliotheken Turtle und Util (GPanel, Console) installieren Ein Unterverzeichnis classes auf der Festplatte erstellen, z.b.

B) Klassenbibliotheken Turtle und Util (GPanel, Console) installieren Ein Unterverzeichnis classes auf der Festplatte erstellen, z.b. jcreator Seite 1 JCreator (Windows) JCreator ist eine einfache, schnelle und effiziente Java-DIE. Eine gratis Testversion sowie eine academic Lizenz für $35.- kann von der Website www.jcreator.com heruntergeladen

Mehr

FTP HOWTO. zum Upload von Dateien auf Webserver. Stand: 01.01.2011

FTP HOWTO. zum Upload von Dateien auf Webserver. Stand: 01.01.2011 FTP HOWTO zum Upload von Dateien auf Webserver Stand: 01.01.2011 Copyright 2002 by manitu. Alle Rechte vorbehalten. Alle verwendeten Bezeichnungen dienen lediglich der Kennzeichnung und können z.t. eingetragene

Mehr

AristaFlow BPM Suit Installation

AristaFlow BPM Suit Installation AristaFlow BPM Suit Installation 1) AF-BPMSuite-1.0.1.exe und de.aristaflow.adept2.licence_1.0.0.jar von http://194.94.80.90/goumas/aristaflow/ herunterladen. Hinweis: eventuelle Warnungen von Anti-Virus

Mehr

Musterlösung für Schulen in Baden-Württemberg. Windows 2003. Basiskurs Windows-Musterlösung. Version 3. Stand: 19.12.06

Musterlösung für Schulen in Baden-Württemberg. Windows 2003. Basiskurs Windows-Musterlösung. Version 3. Stand: 19.12.06 Musterlösung für Schulen in Baden-Württemberg Windows 2003 Basiskurs Windows-Musterlösung Version 3 Stand: 19.12.06 Impressum Herausgeber Zentrale Planungsgruppe Netze (ZPN) am Kultusministerium Baden-Württemberg

Mehr

Scripting Framework PowerShell Toolkit Quick-Install a Workplace for Packaging and Test

Scripting Framework PowerShell Toolkit Quick-Install a Workplace for Packaging and Test Scripting Framework PowerShell Toolkit Quick-Install a Workplace for Packaging and Test Windows Client Management AG Alte Haslenstrasse 5 CH-9053 Teufen wincm.ch 1 Quick Install - Scripting Framework Workplace...3

Mehr

Nach Ihrer erstmaligen Anmeldung sollten Sie Ihr Passwort ändern. Dazu klicken Sie bitte auf Ihren Namen.

Nach Ihrer erstmaligen Anmeldung sollten Sie Ihr Passwort ändern. Dazu klicken Sie bitte auf Ihren Namen. 1 Passwort ändern Nach Ihrer erstmaligen Anmeldung sollten Sie Ihr Passwort ändern Dazu klicken Sie bitte auf Ihren Namen Abb 1-1 Erstmaliger Anmeldung Danach erscheint ein PopUp indem Sie Ihr Passwort

Mehr

SIHLNET E-Mail-Konfiguration

SIHLNET E-Mail-Konfiguration SIHLNET E-Mail-Konfiguration Inhaltsverzeichnis 1. Allgemeines...2 2. OWA...2 2.1. Anmeldung... 2 2.2. Arbeiten mit OWA... 3 2.2.1. Neue E-Mail versenden... 3 2.2.2. E-Mail beantworten / weiterleiten...

Mehr

Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG

Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG Einstellungen im Internet-Explorer (IE) (Stand 11/2013) für die Arbeit mit IOS2000 und DIALOG Um mit IOS2000/DIALOG arbeiten zu können, benötigen Sie einen Webbrowser. Zurzeit unterstützen wir ausschließlich

Mehr

So ziehen Sie Ihr Wordpress Blog zu STRATO um

So ziehen Sie Ihr Wordpress Blog zu STRATO um So ziehen Sie Ihr Wordpress Blog zu STRATO um Version 1.0 So ziehen Sie Ihr Wordpress Blog zu STRATO um Das Wordpress-Plugin Duplicator ermöglicht Ihnen, in wenigen Schritten Ihre Wordpress-Instanz umzuziehen.

Mehr

Hello World in Java. Der Weg zum ersten Java-Programm

Hello World in Java. Der Weg zum ersten Java-Programm Vorwort Hello World in Java Der Weg zum ersten Java-Programm Diese Anleitung wurde unter Windows XP verfasst. Grundsätzlich sollte sie auch unter späteren Windows Versionen wie Windows Vista oder Windows

Mehr

Internet und WWW Übungen

Internet und WWW Übungen Internet und WWW Übungen 7 Serverseitige Web-Technologien [WEB7] Rolf Dornberger 1 06-11-12 7 Serverseitige Web-Technologien 1. Begriffe Zusatz für Interessierte: 2. JSP erstellen 3. Servlet erstellen

Mehr

Einführung in die Cross-Plattform Entwicklung Das Intel App Framework

Einführung in die Cross-Plattform Entwicklung Das Intel App Framework Einführung in die Cross-Plattform Entwicklung Das Intel App Framework Einführung Dieses Hands-on-Lab (HOL) macht den Leser mit dem Intel App Framework vom Intel XDK vertraut. Es wird Schritt für Schritt

Mehr

Ajax & GWT. Kurs: User Interfaces und ihre Evaluierung Dozent: Manfred Thaller WS 2012/2013 Referent: Rafael Kalina

Ajax & GWT. Kurs: User Interfaces und ihre Evaluierung Dozent: Manfred Thaller WS 2012/2013 Referent: Rafael Kalina Ajax & GWT Kurs: User Interfaces und ihre Evaluierung Dozent: Manfred Thaller WS 2012/2013 Referent: Rafael Kalina Ajax Technisches Verfahren, bei dem Browser aktualisierte Inhalte nicht mehr synchron

Mehr

HTL-Website. TYPO3- Skriptum II. Autor: RUK Stand: 02.06.2010 Gedruckt am: - Version: V0.1 Status: fertig. Qualitätsmanagement

HTL-Website. TYPO3- Skriptum II. Autor: RUK Stand: 02.06.2010 Gedruckt am: - Version: V0.1 Status: fertig. Qualitätsmanagement HTL-Website TYPO3- Skriptum II Autor: RUK Stand: 02.06.2010 Gedruckt am: - Version: V0.1 Status: fertig Qualitätsmanagement Erstellt Geprüft Freigegeben Name RUK Datum 02.06.2010 Unterschrift Inhaltsverzeichnis

Mehr

1 Installationen. 1.1 Installationen unter Windows

1 Installationen. 1.1 Installationen unter Windows 1 Installationen Dieses Kapitel beschreibt die Installationen, die für die Nutzung von PHP und MySQL unter Windows, unter Ubuntu Linux und auf einem Mac mit OS X notwendig sind. 1.1 Installationen unter

Mehr

MailUtilities: Remote Deployment - Einführung

MailUtilities: Remote Deployment - Einführung MailUtilities: Remote Deployment - Einführung Zielsetzung Die Aufgabe von Remote Deployment adressiert zwei Szenarien: 1. Konfiguration der MailUtilities von einer Workstation aus, damit man das Control

Mehr

Starthilfe für C# Inhaltsverzeichnis. Medien- und Kommunikationsinformatik (B.Sc.) Alexander Paharukov. Informatik 3 Praktikum

Starthilfe für C# Inhaltsverzeichnis. Medien- und Kommunikationsinformatik (B.Sc.) Alexander Paharukov. Informatik 3 Praktikum Starthilfe für C# Inhaltsverzeichnis Allgemeines... 2 Bezugsquellen... 2 SharpDevelop... 2.NET Runtime... 2.NET SDK... 2 Installation... 2 Reihenfolge... 2 Vorschlag für eine Ordnerstruktur... 3 Arbeit

Mehr

AVR-Programmierung unter Mac OSX

AVR-Programmierung unter Mac OSX AVR-Programmierung unter Mac OSX im Studiengang BEL3 Lehrveranstaltung Embedded Systems Tutorial ausgeführt von: Jürgen Hausladen A-2460 Bruck/Leitha, Obere Neugasse 6 Wien 01.02.2011 Inhaltsverzeichnis

Mehr

VMware Workspace Portal- Benutzerhandbuch

VMware Workspace Portal- Benutzerhandbuch VMware Workspace Portal- Benutzerhandbuch Workspace Portal 2.1 Dieses Dokument unterstützt die aufgeführten Produktversionen sowie alle folgenden Versionen, bis das Dokument durch eine neue Auflage ersetzt

Mehr

CocoaPods Schnelleinstieg

CocoaPods Schnelleinstieg CocoaPods Schnelleinstieg Moritz Haarmann, Software for mobile devices CocoaPods ist das Tool der Wahl, wenn es darum geht, Abhängigkeiten eines Projekts zu verknüpfen. CocoaPods ist kostenlos und quelloffen

Mehr

Securepoint Security Systems

Securepoint Security Systems HowTo: Virtuelle Maschine in VMware für eine Securepoint Firewall einrichten Securepoint Security Systems Version 2007nx Release 3 Inhalt 1 VMware Server Console installieren... 4 2 VMware Server Console

Mehr

Benutzerdokumentation Web-Portal

Benutzerdokumentation Web-Portal GRUPP: SWT0822 Benutzerdokumentation Web-Portal Yet Another Reversi Game Martin Gielow, Stephan Mennicke, Daniel Moos, Christine Schröder, Christine Stüve, Christian Sura 05. Mai 2009 Inhalt 1. Einleitung...3

Mehr

Howto. Konfiguration eines Adobe Document Services

Howto. Konfiguration eines Adobe Document Services Howto Konfiguration eines Adobe Document Services (ADS) Inhaltsverzeichnis: 1 SYSTEMUMGEBUNG... 3 2 TECHNISCHE VERBINDUNGEN ZWISCHEN DEN SYSTEMEN... 3 2.1 PDF BASIERENDE FORMULARE IN DER ABAP UMGEBUNG...

Mehr

Leica icon Series. Installations und Lizenzaktivierungs Handbuch. Version 1.0 Deutsch

Leica icon Series. Installations und Lizenzaktivierungs Handbuch. Version 1.0 Deutsch Leica icon Series Installations und Lizenzaktivierungs Handbuch Version 1.0 Deutsch Inhaltsverzeichnis Inhalt Kapitel Seite 1 icon robot 50 3 1.1 Aktualisieren der Firmware auf dem icon robot 50 3 1.2

Mehr

Erste Schritte in der Benutzung von Microsoft SharePoint 2010

Erste Schritte in der Benutzung von Microsoft SharePoint 2010 Erste Schritte in der Benutzung von Microsoft SharePoint 2010 Inhalt 1. Einleitung... 1 2. Browserwahl und Einstellungen... 1 3. Anmeldung und die Startseite... 3 4. Upload von Dokumenten... 3 5. Gemeinsamer

Mehr

CBS-Heidelberg Helpdesk Filr-Dokumentation S.1

CBS-Heidelberg Helpdesk Filr-Dokumentation S.1 CBS-Heidelberg Helpdesk Filr-Dokumentation S.1 Dokumentation der Anwendung Filr von Novell G Informationen zu Filr, die über diese Dokumentation hinausgehen, finden Sie im Internet unter: http://www.novell.com/de-de/documentation/novell-filr-1-1/

Mehr

25. Februar 2009, Version 1.0. Installationsanleitung Tivoli Storage Manager für Windows. Verwaltungsdirektion. Informatikdienste

25. Februar 2009, Version 1.0. Installationsanleitung Tivoli Storage Manager für Windows. Verwaltungsdirektion. Informatikdienste 25. Februar 2009, Version 1.0 Installationsanleitung für Windows Verwaltungsdirektion Informatikdienste Installationsanleitung für Windows Inhaltsverzeichnis...1 Installation... 1 Voraussetzungen...1 Ablauf

Mehr

RIWA NetUpdater Tool für automatische Daten- und Softwareupdates

RIWA NetUpdater Tool für automatische Daten- und Softwareupdates RIWA NetUpdater Tool für automatische Daten- und Softwareupdates Grundlegendes... 1 Ausführbare Dateien und Betriebsmodi... 2 netupdater.exe... 2 netstart.exe... 2 netconfig.exe... 2 nethash.exe... 2 Verzeichnisse...

Mehr

Der Website-Generator

Der Website-Generator Der Website-Generator Der Website-Generator im Privatbereich gibt Ihnen die Möglichkeit, schnell eine eigene Website in einheitlichem Layout zu erstellen. In Klassen, Gruppen und Institutionen können auch

Mehr

Vom lokalen Build zum Deployment

Vom lokalen Build zum Deployment Vom lokalen Build zum Deployment International PHP Conference Manuel Pichler 12.10.2011 Vom lokalen Build zum Deployment 1 / 36 Über mich Diplominformatiker Mehr als 10 Jahre Erfahrung im PHP-Umfeld Autor

Mehr

Ebenfalls gibt es neben dieser Schritt-für-Schritt Anleitung noch ein Video, welches das Einrichten einer Shared Mailbox zeigt.

Ebenfalls gibt es neben dieser Schritt-für-Schritt Anleitung noch ein Video, welches das Einrichten einer Shared Mailbox zeigt. SHARED MAILBOX IN OFFICE 365 ERSTELLEN Eine Shared Mailbox dient dazu, dass mehrere Mitarbeiter auf ein gemeinsames Postfach (z.b. Support) zugreifen und in dessen Namen E-Mails versenden können. Diese

Mehr

SVN-Tutorial für WEBMM7

SVN-Tutorial für WEBMM7 SVN-Tutorial für WEBMM7 SVN-Tutorial für WEBMM7... 1 Einleitung... 2 Grundprinzip von CVS... 2 Was ist Subversion?... 2 Unterschiede Subversion/CVS... 2 SmartSVN... 3 Installation / Einrichtung... 3 Update...10

Mehr

Tutorial für die Installation des Eclipse- PlugIns "SQLExplorer"

Tutorial für die Installation des Eclipse- PlugIns SQLExplorer Tutorial für die Installation des Eclipse- PlugIns "SQLExplorer" Inhaltsverzeichnis 1. Besorgen der benötigten Software und Tools 2. Installation 3. Einrichtung des SQLExplorers für Eclipse 4. Nutzung

Mehr

Installationsanleitung Webhost Linux Flex

Installationsanleitung Webhost Linux Flex Installationsanleitung Webhost Linux Flex Stand März 2014 Inhaltsverzeichnis 1. Zugangsdaten & Login... 3 2. Passwort ändern... 4 3. Leistungen hinzufügen / entfernen... 6 4. Datenbanken anlegen / entfernen...

Mehr

Anleitungen und Informationen zu KK-NetServer

Anleitungen und Informationen zu KK-NetServer Anleitungen und Informationen zu KK-NetServer 1. Vorwort Unser KK-NetServer ist einer der modernsten und sichersten Daten-Server mit verschiedenen Nutzungsrechten. Er dient in erster Linie zur Bereitstellung

Mehr

SWISSVAULT StorageCenter Console Version 5 Kurzanleitung für SWISSVAULT Combo Partner

SWISSVAULT StorageCenter Console Version 5 Kurzanleitung für SWISSVAULT Combo Partner SWISSVAULT StorageCenter Console Version 5 Kurzanleitung für SWISSVAULT Combo Partner April 2008 Version 1.0 Inhaltsverzeichnis 1 VERWENDUNGSZWECK... 3 2 INSTALLATION... 3 3 STORAGECENTER CONSOLE EINRICHTEN...

Mehr