在本例中,我有三个XSD文件。其中basic.xsd
提供常规对象,use-case-1.xsd
和use-case-2.xsd
都通过以下方式导入基本对象:
<xs:import namespace="http://www.example.com/XMLSchema/app/basic" schemaLocation="basic.xsd"/>
我不想从这些XSD文件中生成代码,其中basic.xsd
提供的对象只有一次。哪个 maven 插件提供此功能,我必须如何配置它?
jaxb2-maven-plugin 可以工作。
<build>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>2.2</version>
<executions>
<execution>
<goals>
<goal>xjc</goal>
</goals>
<configuration>
<extension>true</extension>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
该插件默认在 src/main/xsd
中查找 XSD 文件。xjc 目标与generate-sources
阶段绑定。默认情况下,包名称派生自命名空间。任何导入的命名空间都将使用从引用的架构生成的对象。