Maven kann nicht vom übergeordneten Pom bereitstellen

8

Ich habe gerade angefangen, Anwendungen mit Maven zu erstellen. Einer meiner Ansätze besteht darin, eine Multimodul-Webanwendung zu erstellen. Die Arbeit mit Eclipse macht es sehr einfach, diese Art von Anwendung zu erstellen. Bis jetzt funktioniert alles gut. Der Punkt, an dem ich versage, ist die Bereitstellung. Ich verwende Wildfly als meinen Anwendungsserver und die Bereitstellung der Präsentationsebene funktioniert gut. Aber wenn ich vom übergeordneten Projekt bereitstellen möchte, bekomme ich diese Nachricht:

%Vor%

Das ist sehr verwirrend. Erfolgt die Bereitstellung nicht aus den zuvor installierten Dateien im Ordner .m2 / repository? Benötige ich ein Zielverzeichnis in meinem Elternordner?

Meine Elternpom-Datei

%Vor%

BEARBEITEN : Ich habe es gerade mit Anlegesteg versucht. Funktioniert gut. Warum funktioniert es nicht mit Wildfly?

EDIT2 : Ich verwende das simple-parent-project-Beispiel aus dem Sonatype-Buch

    
claim 15.05.2014, 13:21
quelle

2 Antworten

17

Im übergeordneten POM müssen Sie <skip>true</skip> zur Konfiguration hinzufügen. Dann setze es auf false für dein WAR POM.

Übergeordnetes POM

%Vor%

WAR POM

%Vor%     
James R. Perkins 16.05.2014, 16:37
quelle
1

Ihre Anwendungs-EAR befindet sich wahrscheinlich nicht im übergeordneten Projektbuild-Ordner. Es befindet sich wahrscheinlich im APP-Modul-Build-Projekt. Wenn Sie hier: sehen, gibt es targetDir Standardmäßig wird das Verzeichnis des aktuellen Projekts erstellt. Sie können einen anderen Wert angeben. Und der Dateiname -Parameter zeigt auf den Dateinamen. Es ist standardmäßig $ {project.build.finalName}. $ {Project.packaging} und in Ihrem Fall hat es keine sinnvolle Erweiterung.

Vielleicht möchten Sie etwas wie

ausprobieren %Vor%

zu deiner Plugin-Verteidigung. Sie können natürlich den relativen Pfad verwenden. Sie können auch versuchen, Ihr Plugin vom APP-Projekt auszuführen.

    
skegg99 16.05.2014 13:10
quelle