控制模式文件名由jaxb schemagen maven插件创建(maven-jaxb-schemagen-plugin)

时间:2011-05-27 10:20:29

标签: java maven-2 jaxb schemagen

我似乎无法弄清楚如何控制maven-jaxb-schemagen-plugin创建的XSD文件的文件名。 documentation有点稀疏。

        <groupId>com.sun.tools.jxc.maven2</groupId>
        <artifactId>maven-jaxb-schemagen-plugin</artifactId>
        <version>1.2</version>
        <configuration>
           <project>${project}</project>
           <destdir>${project.build.directory}/generated-resources/schemas</destdir>
           <srcdir>${project.build.sourceDirectory}/my/jaxb/bean/package</srcdir>
           <verbose>true</verbose>
        </configuration>

似乎总是创建一个名为schema1.xsd

的文件

1 个答案:

答案 0 :(得分:4)

您需要添加架构元素,这些元素描述哪个文件应包含您拥有的每个命名空间的元素:

<configuration>
    [...]
    <schemas>
       <schema>
          <namespace>http://www.example.invalid/2001/05/27/wibble</namespace>
          <file>wibble.xsd</file>
       </schema>
    </schemas>
<configuration>

假设您已设置组件的命名空间

@XmlRootElement(name = "wobble", namespace="http://www.example.invalid/2001/05/27/wibble")