Build-Prozess für Java-Anwendungen: So setzt man Maven ein

Im Folgenden wird erklärt, wie man den der Build-Prozess verwalten kann, wenn aus Java-Code eine Webanwendung entsteht, die in einen laufenden Server integriert werden kann. In diesem Fall soll Apache Maven die Aufgabe erledigen. Das Tool ist stärker lebenszyklusorientiert als Ant und inzwischen als Release 2 verfügbar.

Aber auch wenn Maven hier als Ersatz für Ant dient, sollte man nicht der irrigen Meinung verfallen, es handle sich hierbei nur um ein Build-Tool. Vielmehr kann es ganze Projekte verwalten und bewährte Muster aus der Praxis umsetzen. Am einfachsten ist es, wenn man erst einmal Maven installiert und sich dann um den neuen Quellcode für die ToDoTasks-Anwendung kümmert.

Als Erstes fällt ins Auge, wie viel einfacher der Verzeichnisbaum ausfällt. Auf oberster Ebene gibt es ein src-Verzeichnis, eine pom.xml-Datei und das Project Object Model (POM), wo sämtliche Informationen über das Projekt gesammelt werden. Ein POM teilt Maven mit, wie es ein so genanntes Artefakt erstellen soll, das über einen Namen, eine Gruppe und eine Version verfügt und mit einer jar– oder war-Datei verknüpft ist. Daher ist das Erste, worüber das POM Informationen enthält, das Artefakt, das erstellt werden soll:

Das ist der obligatorische Kopf. Er beginnt mit einem project-Element, und dann folgt ein zwingend vorgeschriebenes modelVersion-Element, das angibt, welche Version von POM verwendet wird. Danach kommen die Informationen zum Artefakt:

Die groupId ist eine eindeutige ID für eine Gruppe von Artefakten. In diesem Fall lautet sie uk.builder. Die artifactId ist ein eindeutiger Bezeichner für das Artefakt innerhalb der Gruppe. Zusammen bilden diese Informationen den Namen des Artefakts, geben aber noch nicht die Version an.

Hier steht die Versionsbezeichnung für das Projekt. Die Ergänzung „-SNAPSHOT“ entspricht der Praxis von Maven zur Bezeichnung von Versionen, die sich noch „in der Entwicklung“ befinden. Damit hat man zwar einen Arbeitsnamen für das Projekt, aber noch keinen Anzeigenamen.

Dieser Name wird von Maven verwendet, wenn der Name des Artefakts angezeigt werden muss. Nun folgt der wirklich wichtige Abschnitt:

Das packaging-Element kann den Wert jar, war oder ear annehmen. Da es hier um eine Webanwendung geht, wird das war-Format verwendet. Dabei geht es nicht nur um die Verpackung des Artefakts, wie es auf den ersten Blick scheinen mag: Diese Einstellung hat Auswirkungen auf den gesamten Lebenszyklus des Artefakts.

Page: 1 2 3 4

ZDNet.de Redaktion

Recent Posts

Black Friday: Vorsicht vor schädlichen QR-Codes

Bösartige QR-Codes, die per E-Mail versendet werden, eignen sich sehr gut, um Spam-Filter zu umgehen.

20 Stunden ago

Black Friday: Zahl der ominösen Shopping-Websites steigt

Unsichere Websites und Phishing-Mails in Verbindung mit Black Friday können kauffreudigen Konsumenten zum Verhängnis werden.

20 Stunden ago

SmokeBuster bekämpft SmokeLoader

Malware SmokeLoader wird weiterhin von Bedrohungsakteuren genutzt, um Payloads über neue C2-Infrastrukturen zu verbreiten.

1 Tag ago

Taugen Kryptowährungen als Unterstützer der Energiewende?

Bankhaus Metzler und Telekom-Tochter MMS testen, inwieweit Bitcoin-Miner das deutsche Stromnetz stabilisieren könnten.

2 Tagen ago

Supercomputer-Ranking: El Capitan überholt Frontier und Aurora

Mit 1,7 Exaflops ist El Capitan nun der dritte Exascale-Supercomputer weltweit. Deutschland stellt erneut den…

2 Tagen ago

Ionos führt neue AMD-Prozessoren ein

Der deutsche Hyperscaler erweitert sein Server-Portfolio um vier Angebote mit den neuen AMD EPYC 4004…

2 Tagen ago