您好我正在使用maven2-xdoclet2-plugin来生成hibernate映射
xdoclet的配置类似于:
<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>
当我跑步时
mvn clean generate-resources
它得到以下内容:
tree -L 2 target/classes/
target/classes/
|-- com
| `-- company
| `-- (the mappings generated)
`-- generated-resources
`-- xdoclet
`-- com
`-- company
`-- (the mappings generated)
所以我想避免的是在jar文件中包含“generated-resources”目录。
我该怎么做?我没有太多运气就进行了一些谷歌搜索。
答案 0 :(得分:0)
您将映射文件打包到JAR文件中,因为映射文件生成到错误的输出目录。您配置了:
<destdir>${project.build.directory}/classes</destdir>
因此映射文件将在target/classes/
文件夹中生成,该文件夹用于构建输出JAR文件。尝试其他目录,如:
<destdir>${project.build.directory}/generated</destdir>
答案 1 :(得分:0)
我终于从maven2-xdoclet2-plugin迁移到了xdoclet-maven-plugin,它按预期工作(我在hibernate映射生成方面也遇到了一些问题)。
<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>