编程语言
首页 > 编程语言> > java-由jaxb schemagen maven插件(maven-jaxb-schemagen-plugin)创建的控制模式文件名

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

作者:互联网

我似乎无法弄清楚如何控制由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的文件

解决方法:

您需要添加模式元素,该模式元素描述哪个文件应包含您拥有的每个命名空间的元素:

<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")

标签:jaxb,maven-2,java,schemagen
来源: https://codeday.me/bug/20191102/1992477.html