Wie bauen EAR-Projekt mit EJB und KRIEG in maven?
Habe ich versucht zu erstellen EAR-Projekt mit EJB und KRIEG, aber ich habe einige Probleme.
Ich erstelle das Projekt in IntelliJ IDEA von Archetyp:
<dependency>
<groupId>org.codehaus.mojo.archetypes</groupId>
<artifactId>ear-javaee6</artifactId>
<version>1.5</version>
</dependency>
Dann ich erstellte EJB-Modul von Archetyp:
<dependency>
<groupId>org.codehaus.mojo.archetypes</groupId>
<artifactId>ejb-javaee6</artifactId>
<version>1.5</version>
</dependency>
Und dann habe ich angelegt, das zweite Modul vom Archetyp:
<dependency>
<groupId>javax.faces</groupId>
<artifactId>javax.faces-war-archetype</artifactId>
<version>2.2</version>
</dependency>
Dann habe ich die Abhängigkeiten zu den wichtigsten pom.xml:
<!-- Define the versions of your ear components here -->
<dependencies>
<dependency>
<groupId>QCforCC-main</groupId>
<artifactId>QCforCC-ejb</artifactId>
<version>1.0-SNAPSHOT</version>
<type>ejb</type>
</dependency>
<dependency>
<groupId>QCforCC-main</groupId>
<artifactId>QCforCC-war</artifactId>
<version>1.0-SNAPSHOT</version>
<type>war</type>
</dependency>
</dependencies>
Und dann habe ich versucht, das Projekt zu erstellen - mit maven clean und installieren .
Aber ich habe einen Fehler:
[FEHLER] Die Projekte im Reaktor enthalten, der eine zyklische Referenz: Edge
zwischen " Vertex{label='QCforCC-main:QCforCC-Krieg:1.0-SNAPSHOT'}' und
'Vertex{label='QCforCC-main:QCforCC-ejb:1.0-SNAPSHOT'} " führt zu
Zyklus im Graphen QCforCC-main:QCforCC-ejb:1.0-SNAPSHOT -->
QCforCC-main:QCforCC-Krieg:1.0-SNAPSHOT -->
QCforCC-main:QCforCC-ejb:1.0-SNAPSHOT -> [Help 1] [FEHLER] [FEHLER]
sehen Sie sich die volle stack-trace der Fehler, re-führen Sie Maven mit der e-Mail
- Schalter. [FEHLER] Re-führen Sie Maven mit dem-X Schalter zum aktivieren der vollständigen debug
die Protokollierung. [FEHLER] [FEHLER] Für weitere Informationen über die Fehler und
mögliche Lösungen Lesen Sie bitte den folgenden Artikel: [ERROR] [Hilfe
1]
http://cwiki.apache.org/confluence/display/MAVEN/ProjectCycleExceptionProzess beendet mit exit-code 1
- Und in-EAR - pom.xml
ich habe:
<modules>
<module>QCforCC-ejb</module>
<module>QCforCC-war</module>
</modules>
<packaging>pom</packaging>
Aber wenn ich <packaging>pom</packaging>
zu <packaging>ear</packaging>
IDEE zeigen Fehler im popup:
Einige Probleme festgestellt wurden, die während der Bearbeitung der POMs: [WARNUNG]
'bauen.plugins.plugin.(groupId:artifactId)' eindeutig sein müssen, sondern gefunden
doppelte Deklaration des plugins
org.apache.maven.plugins:maven-ear-plugin @ Zeile 41, Spalte 21 [FEHLER]
'Verpackung' mit dem Wert 'Ohr' ist ungültig. Aggregator-Projekte erfordern
'pom' als Verpackung. @ Zeile 12, Spalte 16
InformationsquelleAutor Pavel | 2015-10-07
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich sehr empfehlen, dass Sie verstehen, wie multi-module-builds arbeiten. Das Sonatype Buch hat eine große Kapitel Beschreibung in große detail.
Bauen ein OHR mit einem EJB und einem KRIEG, die Sie auch tatsächlich brauchen drei Module, für die EJB, KRIEG und OHR. Das parent-POM nur hält alles zusammen und hat eine Verpackung Typ POM.
Die Eltern pom.xml sollte so Aussehen:
Dann, jedes Kind Aufführen würde wie folgt Aussehen:
ejb-module/pom.xml:
war-module/pom.xml
ear-module/pom.xml:
Finden Sie in der Dokumentation für das maven-ear-plugin hier: maven.apache.org/plugins/maven-ear-plugin/modules.html
Artefakt QCforCC-Ohr:ejb explodierte: java.io.IOException: com.Sonne.enterprise.admin.remote.RemoteFailureException: Archiv-Typ C:\app\QCforCC-mainApp\QCforCC-ear\target\QCforCC-ear-1.0-SNAPSHOT wurde nicht erkannt
Bearbeiten Sie Ihre Frage mit der aktualisierten POM-Dateien, dem Befehl, den Sie lief und die build-Ausgabe.
Denke, die ejbModule und Web-Modul sollte innerhalb eines Elements
<modules>
InformationsquelleAutor sh0rug0ru
InformationsquelleAutor question_maven_com