Wie zu release von Maven multi-Modul-Projekt mit inter-Projekt-Abhängigkeiten?

Können sagen, wir haben 3 Schichten-Projekt. DB -, Business -, Web-und Aggregation der pom.

Project  
|-DB  
| |-pom.xml  
|-Business  
| |-pom.xml  
|-pom.xml

Alle Module sind in der Nachsorge entlassen zu werden und verzweigten zusammen, so Aggregator pom konfiguriert ist, weisen Sie die gleiche version für alle Teilgebiete. Wir haben die folgenden Versionen:

DB-0.1-SNAPSHOT  
Business-0.1-SNAPSHOT which depends on DB-0.1-SNAPSHOT  
Web-0.1-SNAPSHOT which depends on Business-0.1-SNAPSHOT  

Wenn dabei release:prepare alle Versionen aktualisiert, um 0,1, aber bereiten Sie nicht, weil es keine DB-0.1 in Abhängigkeit noch.

Ist eine Lösung zum erstellen von verschiedenen Projekten für jedes Modul und lassen Sie Sie eins nach dem anderen, während mit versions:use-releases plugin zu aktualisieren Abhängigkeit zu 0,1

Aber ich weiß nicht wie diese Idee, weil es erfordert eine Menge von Konfiguration und scripting. Also, ich bevorzuge die aggregation und die Freilassung aller Module mit single-Befehl, aber das problem ist, wie ich oben schrieb, bei der release-plugin versucht zu bauen Business-0.1 es gibt keine DB-0.1 im repository noch.

Gibt es eine Möglichkeit, zu verwalten, diese inter-Projekt-Abhängigkeiten?

Dank.

UPD:

installieren, auch Ziel schlägt fehl.

  1. DB-Bauen - OK (kein snapshot noch die version in einem repository)
  2. Business - Ausfall (DB-0.1-SNAPSHOT nicht im repository. Aber es ist auch nicht sein soll, gibt es noch!)

Bin ich mit maven-3.0.2-und release-plugin 2.1

  • Sie haben aufgeführt, Geschäfts-und DB als Module des parent-POM, richtig? Und Sie läuft release:bereiten Sie nur auf die parent-POM, richtig? Die Funktionalität, die Sie beschreiben, funktioniert out-of-the-box, ganz normal.
  • Ja es läuft, WENN das Geschäft hängt davon ab, ältere Versionen der DB, die bereits im repository. Aber wenn Sie versuchen, verweisen auf die neue version, die nicht im repository, wie es war, nicht auch noch gebaut werden, dann Nein, es funktioniert nicht ...
  • Es muss nicht in den repo - Maven, wird der Blick in den "Reaktor" (ie-aktuell-Aufbau-Module) zuerst.
InformationsquelleAutor Dima | 2011-03-02
Schreibe einen Kommentar