Maven: Comment ajouter des fichiers à la racine dans un EAR avec maven-plugin-oreille?
-
08-10-2019 - |
Question
Je dois ajouter 2 fichiers XML dans un EAR généré avec l'oreille-plugin Maven.
Malheureusement, je ne l'ai pas vu un moyen d'ajouter un fichier arbitraire à une oreille; documentation du plugin qui se lit « Le soutien plug-in EAR les objets suivants: ejb, guerre, pot, ejb-client, rar, EJB3, par, sar, WSR et har ». Il n'y a rien pour l'ajout d'un fichier régulier.
org.apache.maven.plugins maven-plugin-oreille 2.3.1 foo foo 1.4 lib $ {} Parent.groupId foo-web / foo org.richfaces.framework richfaces-api commons-lang commons-lang
Un grand merci à l'avance.
La solution
maven-plugin-oreille 2.4.2 vous pouvez utiliser des éléments de configuration earSourceDirectory, earSourceExcludes et earSourceIncludes de déclarer les fichiers supplémentaires à inclure dans l'oreille.
Par défaut, vous placez simplement ces fichiers à $ {basedir} / src / dossier principal de l'application /.
Autres conseils
J'ai eu le même problème. J'ai eu le fichier ejb.properties sous / src / EJBs principales ressources / et avait utilisé earSourceDirectory et earSourceIncludes pour tirer le fichier du répertoire à l'oreille EJBs. Cependant, il n'a pas fiable le mettre dans le répertoire lib. L'EJB ne trouve pas dans. il recherche dans le répertoire lib.
Pour résoudre ce problème, j'ai créé le répertoire src / main application / / lib et créé un lien vers le fichier ejb.properties. J'ai ensuite retiré la earSourceDirectory et Includes propriétés. Maintenant, quand je fais un paquet propre mvn, il tire automatiquement le fichier de propriétés et le met dans le répertoire lib de l'oreille.
Désolé d'être en retard pour @wishihadabettername mais j'avais même question récemment, plus je ne pouvais pas bouger les fichiers à inclure parce qu'ils étaient dans un autre dossier puis earSourceDirectory. Je lis oreille maven-ear-plugin: documentation oreille et réfléchi à la façon de se déplacer mon dossier release
à la racine de l'oreille.
Lié par défaut à la phase du cycle de vie. Package
et
WORKDIRECTORY -. Répertoire que les ressources sont copiés lors de la construction
Valeur par défaut est:. $ {} project.build.directory / $ {} project.build.finalName
Alors mes regards pom.xml sous-module comme ceci:
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>copy-resources</id>
<phase>prepare-package</phase> <!-- before package phase -->
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<!-- Work Directory of Ear plugin -->
<outputDirectory>${project.build.directory}/${project.build.finalName}</outputDirectory>
<resources>
<resource>
<!-- my resource folder -->
<directory>release</directory>
<filtering>true</filtering>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
Hope il aider les gens à partir de maintenant