2012-11-02 16 views
5

Ich habe ein Projekt mit mehreren Abhängigkeiten zu anderen Projekt.Wie man Maven Build abhängig Projekt machen

<?xml version="1.0" encoding="UTF-8"?> 
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> 
<modelVersion>4.0.0</modelVersion> 
<groupId>group1</groupId> 
<artifactId>artifact1<artifactId> 
<name>RealtyRegistry</name> 
<packaging>war</packaging> 
<version>1.0.0-SNAPSHOT</version> 
<properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
</properties> 
<dependencies> 
    <dependency> 
     <groupId>group1</groupId> 
     <artifactId>artifact2</artifactId> 
     <version>1.0.0</version> 
    </dependency> 
    <dependency> 
     <groupId>group1</groupId> 
     <artifactId>artifact3</artifactId> 
     <version>1.0.0</version> 
    </dependency> 
</dependencies> 

Alle von mir gleichzeitig entwickelt. Ich füge edition den Dateien aller Projekte hinzu und muss Hauptprojekt zusammen mit abhängigen erstellen. Wie geht das bei Projekten ohne Baumstruktur?

Für Projekthierarchie können 2 oder mehr Bäume vorhanden sein, zum Beispiel: A hängt von B, C ab; D hängt von C, E ab; A und D sind unabhängig.

Antwort

6

Mit "Module" können Sie mehrere Projekte zusammen erstellen. Normalerweise würden Sie dies tun, indem Sie ein "Mutter" -Projekt mit <packaging>pom</packaging> erstellen und Ihr reales Projekt als Module unter Verwendung des Tags <modules> hinzufügen. Wenn Sie das Projekt "Mutter" erstellen, werden alle Module automatisch in der richtigen Reihenfolge erstellt. Hier

ist ein Beispiel aus dem Maven by Example Buch:

<groupId>org.sonatype.mavenbook.multi</groupId> 
<artifactId>simple-parent</artifactId> 
<version>1.0</version> 
<packaging>pom</packaging> 

<modules> 
    <module>simple-weather</module> 
    <module>simple-webapp</module> 
</modules> 

Beachten Sie, dass diese Sie Ihre Module in Unterordner haben erfordert, die entsprechend benannt sind.

/.../my-project/ 

und die Module in: Zum Beispiel würden Sie die „Mutter“ pom in irgendeinem Ordner

/.../my-project/simple-weather/ 
/.../my-project/simple-webapp/ 

Weitere Informationen lesen Chapter 6. A Multi-module Project des Buches, ist es frei verfügbar im Sonatype Webseite.

+0

Die Sache ist meine Maven-Projekte bildet keinen Baum, um sie in Unterordner zu setzen. Es kann 2 oder mehr umhüllende Bäume für Projekthierarchie geben, zum Beispiel: A hängt von B, C ab; D hängt von C, E ab; A und D sind unabhängig. – Vyacheslav

+0

spezifizieren Sie diese Abhängigkeiten innerhalb des abhängigen Moduls pom. – Will

+0

@Vyacheslav Hier gibt es ein Missverständnis: Das Modulsystem hat nichts mit Abhängigkeiten zu tun. Ihre Projekte können beliebige Abhängigkeiten zueinander haben. Neu ist nur, dass Sie sie als Module des Hauptprojekts deklarieren und in Unterordner nebeneinander legen. – rolve

Verwandte Themen