Suppression de ressources générées à partir d'un fichier jar
-
30-09-2019 - |
Question
Bonjour J'utilise maven2-xdoclet2-plugin pour générer la mise en veille prolongée mappings
La configuration de XDoclet est quelque chose de similaire à ceci:
<plugin>
<groupId>org.codehaus.xdoclet</groupId>
<artifactId>maven2-xdoclet2-plugin</artifactId>
<version>2.0.7</version>
<executions>
<execution>
<id>xdoclet</id>
<phase>generate-sources</phase>
<goals>
<goal>xdoclet</goal>
</goals>
</execution>
</executions>
(... dependencies ...)
<configuration>
<configs>
<config>
<components>
<component>
<classname>org.xdoclet.plugin.hibernate.HibernateMappingPlugin</classname>
<params>
<version>3.0</version>
</params>
</component>
</components>
<params>
<destdir>${project.build.directory}/classes</destdir>
</params>
</config>
</configs>
</configuration>
Quand je lance
mvn clean generate-resources
obtenir la chose suivante:
tree -L 2 target/classes/
target/classes/
|-- com
| `-- company
| `-- (the mappings generated)
`-- generated-resources
`-- xdoclet
`-- com
`-- company
`-- (the mappings generated)
Alors ce que je veux éviter est d'avoir le répertoire « généré des ressources » dans le fichier jar.
Comment puis-je faire cela? Je l'ai fait quelques recherches de Google sans trop de chance.
La solution 2
J'ai finalement quitté maven2-xdoclet2-plugin pour XDoclet-maven-plugin et cela a fonctionné comme prévu (je aussi avoir quelques problèmes avec la génération de cartographie mise en veille prolongée).
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>xdoclet-maven-plugin</artifactId>
<executions>
<execution>
<id>xdoclet</id>
<phase>generate-resources</phase>
<goals>
<goal>xdoclet</goal>
</goals>
</execution>
</executions>
<configuration>
<tasks>
<hibernatedoclet
destdir="${project.build.outputDirectory}"
mergeDir="${project.basedir}/src/main/resources/hibernate">
<fileset dir="${project.basedir}/src/main/java"
includes="**/domain/**/*.java" />
<hibernate version="3.0" />
</hibernatedoclet>
</tasks>
</configuration>
</plugin>
Autres conseils
Vous obtenez les fichiers de mappage emballés dans le fichier JAR car les fichiers de mappage sont générés au mauvais répertoire de sortie. Vous avez configuré:
<destdir>${project.build.directory}/classes</destdir>
Ainsi, les fichiers de mappage seront générés dans le dossier target/classes/
qui est utilisé pour construire le fichier de sortie JAR. Essayez un autre répertoire comme:
<destdir>${project.build.directory}/generated</destdir>