Gradle: Die erzeugte WAR-Datei hat zwei Versionen von JAR aus dem untergeordneten Projekt

9

Ich habe ein Root-Projekt, das WAR erstellt, und zwei untergeordnete Projekte, die JARs erstellen. Das Root-Projekt referenziert auf diese Weise das untergeordnete Projekt:

%Vor%

Anwendung2 hängt von Anwendung1 ab:

%Vor%

Die WAR-Datei enthält zwei Versionen von application1.jar: eine aus dem Repository, eine andere aus dem Repository.

EDIT: Application2 muss von application1 als JAR abhängig sein, da dies das Debugging in Eclipse mit eingebettetem Jetty vereinfacht: Eclipse fügt application1.jar automatisch dem Klassenpfad der Jetty-Server-Startkonfiguration hinzu.

    
isobretatel 29.04.2016, 21:04
quelle

1 Antwort

0

Sie haben die Abhängigkeit für application1 project für das Root-Projekt und für application2 anders angegeben.

Für Ihr application2 wurde es als Abhängigkeit von einer Bibliothek in einem Repository erstellt, aber Ihr Stammprojekt hängt davon ab wie bei einem Unterprojekt. Gradle kann nicht feststellen, dass eine Bibliothek im Repo die gleiche ist wie das Artefakt eines Unterprojekts.

Wenn Sie nicht wollen, dass zwei Versionen der gleichen Bibliothek erstellt werden, müssen Sie sie von derselben Bibliothek abhängig machen: entweder als

%Vor%

oder als

%Vor%

Wie auch immer, es scheint vorzuziehen, es in beiden Fällen von demselben Teilprojekt abhängig zu machen, anstatt von einem Projekt und von der Bibliothek im Repo.

    
Stanislav 10.05.2016 11:27
quelle

Tags und Links