JAXenter.de

Das Portal für Java, Architektur, Cloud & Agile
X

Heute im W-JAX Countdown: Mike Wiesner über Spring vs. Java EE

Maven-Release-Plug-in: Fehlerteufel ade!

Voraussetzungen

Um das Maven-Release-Plug-in einsetzen zu können, müssen gewisse Voraussetzungen erfüllt sein: Zum einen wird ein Sourcecode Repository wie zum Beispiel Subversion [2] benötigt, zum anderen, wie bereits angesprochen, ein Maven Repository wie beispielsweise Sonatype Nexus [3]. Auf die Installation dieser Tools soll an dieser Stelle nicht weiter eingegangen werden, Informationen dazu finden sich auf den entsprechenden Webseiten. Selbstverständlich muss eine Maven-Installation [4] vorhanden sein, und das Projekt (welches releast werden soll) muss ein Maven-Projekt sein. Des Weiteren wird vorausgesetzt, dass Maven so konfiguriert ist, dass es das Maven Repository "kennt", das heißt, dass zum Beispiel $mvn deploy ein Artefakt auf das Repository kopiert.

Installation und Konfiguration

Wenn die angesprochenen Voraussetzungen erfüllt sind, können wir uns um die Einrichtung des eigentlichen Plug-ins kümmern. Um das Release-Plug-in verwenden zu können, muss die pom.xml des Projekts im build-Abschnitt um die Dependency maven-release-plugin ergänzt werden, wie in Listing 1.

Listing 1

        ...
        org.apache.maven.pluginsmaven-release-plugin2.2.1
        ...
    

Zusätzlich muss die SCM Connection (Source Control Management) angeben werden, damit das Plug-in weiß, wo es das aktuelle Projekt im Repository finden kann (Listing 2).

Listing 2
scm:svn:https://myserver/svn/maven-release-plugin-test/trunk

Des Weiteren muss, falls nicht bereits vorhanden, das Distribution Management deklariert werden, in dem jeweils die ID und der URL für das SNAPSHOT Repository und das RELEASE Repository beschrieben sind. Ein Beispiel hierfür ist in Listing 3 zu finden. Sämtliche verfügbaren Konfigurationseinstellungen sind unter [5] detailliert aufgelistet. Für das folgende Beispiel sind die Standardeinstellungen jedoch ausreichend.

Listing 3
Releases-repositoryNexus Managed Internal Repositoryhttp://myserver/nexus/content/repositories/releasestrueSnapshots-repositoryNexus Managed snapshot Repositoryhttp://myserver/nexus/content/repositories/snapshotsfalse

 
Verwandte Themen: 

Kommentare

Ihr Kommentar zum Thema

Als Gast kommentieren:

Gastkommentare werden nach redaktioneller Prüfung freigegeben (bitte Policy beachten).