我们有两个不同的项目,每个项目都有自己的XSD来使用JAXB生成类。每个项目都有相同的maven插件配置来实现这一点,即
<plugin>
<groupId>org.jvnet.jaxb2.maven2</groupId>
<artifactId>maven-jaxb2-plugin</artifactId>
<executions>
<execution>
<id>generate-pojo</id>
<goals>
<goal>generate</goal>
</goals>
<configuration>
<extension>true</extension>
<args>
<arg>-Xsetters</arg>
<arg>-Xsetters-mode=direct</arg>
</args>
<forceRegenerate>false</forceRegenerate>
<schemaDirectory>src/main/resources/xsd</schemaDirectory>
<plugins>
<plugin>
<groupId>org.jvnet.jaxb2_commons</groupId>
<artifactId>jaxb2-basics</artifactId>
<version>${jaxb2-basics.version}</version>
</plugin>
</plugins>
</configuration>
</execution>
</executions>
</plugin>问题是,在Eclipse中运行mvn install命令并刷新项目树后,我只能在其中一个项目中看到新生成的类作为源文件夹,而不能看到另一个项目中的源文件夹。其他项目会有什么问题呢?
发布于 2016-01-01 01:12:49
免责声明:我是maven-jaxb2-plugin的作者。
如果你不展示你的pom.xml,很难分辨出问题出在哪里。我建议插件处于非活动状态。例如,它可能在pluginManagement中声明,但不在build/plugins中声明。或者这可能是一个pom (vs. jar)打包,等等。您所显示的pom.xml片段对我来说似乎完全没问题。
作为插件的作者,我的主要反应是你应该发布你的项目的mvn clean install -e -X日志以及pom.xml,或者,更好的是,在这里发送一个带有复制项目的pull请求:
https://github.com/highsource/maven-jaxb2-plugin-support
ps。与@Tunaki建议的不同,如果你使用我的maven-jaxb2-plugin,你不需要声明buildhelper-maven-plugin。maven-jaxb2-plugin自动将生成的源文件夹添加为Maven源文件夹。
https://stackoverflow.com/questions/34548389
复制相似问题