Frage

Ich habe ein Java-Projekt, das aus drei Teilprojekten zusammengesetzt ist, die einen .jar-Artefakt jeden (und haben Unter Abhängigkeiten unter ihnen) erzeugen. Darüber hinaus gibt es ein Web-Projekte, die auf den ersten 3 Projekten abhängen und eine WAR-Datei erzeugen. Der Krieg Datei ist meinen letzten Artefakt, das heißt, was ich meine Kunden versenden.

Außerdem habe ich eine übergeordnete Modul, das alle anderen Projekte umfasst:

<modules>
    <module>../core</module>
    <module>../commons</module>
    <module>../api</module>
    <module>../web</module>
</modules>

I erzeugen Eclipse-Dateien (mvn eclipse: eclipse) und mit Eclipse arbeiten. Das Problem ist, wenn ich einer des nicht-Webprojekte ändere ich es manuell vor der Bereitstellung des Web-Projektes auf meine Web-Container installiert werden muss. Wie kann ich sicherstellen, dass das Web-Projekt im Repository installiert direkt auf den Quellcode der anderen und nicht von der Version abhängig ist.

War es hilfreich?

Lösung

In Ihrer Web-Anwendung Eigenschaften (rechts klicken Sie auf das Projekt im Paket-Explorer, dann „Eigenschaften“), fügen Sie die drei Module (Kern, commons und api) in den „J2EE-Modul Abhängigkeiten“ (die anderen Module müssen geöffnet werden in dem Eclipse-Workspace).

Andere Tipps

Möchten Sie eine Abhängigkeit von den Source-Gläsern in das Repository bereitgestellt hinzufügen?

Wenn ja, können Sie es tun, indem die Quellen Klassifikator zur Abhängigkeit. Siehe diese Antwort weitere Details.

Wenn nicht, können Sie klären weiter bitte.

Ich denke, Ihr Problem ist, dass Sie nur gerade den Krieg Projekt bauen. Wenn Sie es von der Kommandozeile bauen, was dann müssen Sie bauen, ist das übergeordnete Modul. „Mvn-Paket“ in dem Verzeichnis, das das übergeordnete Modul enthält, sollte genug sein. Natürlich bedeutet dies, dass Sie die Pakete alle jedes Mal zu bauen, aber das ist die Art und Weise Maven funktioniert.

Die Abhängigkeit: Baum Ziel selbst werden die Dinge sehen im Repository, anstatt den Reaktor. Sie können von mvn Installation dieses Problem umgehen, wie zuvor vorgeschlagen, oder etwas weniger beschwerlich zu tun, die den Reaktor, wie

rufen
  

MVN Abhängigkeit kompiliert: Baum

Funktioniert für mich.

Edit: D'oh! diese Antwort auf die falsche Frage gestellt. Gemeint war, diese

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top