jaxb maven插件的IntelliJ bindingDirectory

jaxb maven插件的IntelliJ bindingDirectory,maven,intellij-idea,jaxb,jaxb2-maven-plugin,Maven,Intellij Idea,Jaxb,Jaxb2 Maven Plugin,我想在单独的schema.xjb绑定文件中为schema.xsd生成的类型添加globalBinding。我使用的是IntelliJ,不确定这个问题是maven还是IntelliJ造成的(因为这个示例在eclipse中按预期运行)。我得到的错误是: org.xml.sax.SAXParseException; systemId: file:/D:/Projects/Location/To/Project/src/main/resources/xsd/schema.xsd; lineNumber:

我想在单独的schema.xjb绑定文件中为schema.xsd生成的类型添加globalBinding。我使用的是IntelliJ,不确定这个问题是maven还是IntelliJ造成的(因为这个示例在eclipse中按预期运行)。我得到的错误是:

org.xml.sax.SAXParseException; systemId: file:/D:/Projects/Location/To/Project/src/main/resources/xsd/schema.xsd; lineNumber: 7; columnNumber: 10; vendor extension bindings (jaxb:extensionBindingPrefixes) are not allowed in the strict mode. Use -extension.
下面是my pom.xml中的build元素:

<build>
    <plugins>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>jaxb2-maven-plugin</artifactId>
            <version>1.5</version>
            <executions>
                <execution>
                    <phase>generate-sources</phase>
                    <goals>
                        <goal>xjc</goal>
                    </goals>
                </execution>
            </executions>
            <configuration>
                <!-- The name of your generated source package -->
                <packageName>com.my.model.example</packageName>
                    <schemaDirectory>${project.basedir}/src/main/resources/xsd</schemaDirectory>
                <!-- Well Intellij acts badly when it comes down to binding files, so there is that. -->
                <bindingDirectory>${project.basedir}/src/main/resources/xjb</bindingDirectory>
            </configuration>
        </plugin>

    </plugins>

</build>

org.codehaus.mojo
jaxb2 maven插件
1.5
生成源
xjc
com.my.model.example
${project.basedir}/src/main/resources/xsd
${project.basedir}/src/main/resources/xjb
下面是我在/src/main/resources/xsd中的模式:

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           id="SampleSchema"
           targetNamespace="http://sample.com/namespace"
           elementFormDefault="qualified"
           xmlns="http://sample.com/namespace"
        >

    <xs:element name="Example">
        <xs:complexType>
            <xs:sequence>
                <xs:element name="name" type="xs:string" maxOccurs="unbounded" />
                <xs:element name="street" type="xs:string"/>
            </xs:sequence>
        </xs:complexType>
    </xs:element>

</xs:schema>

这是我的绑定文件,位于/src/main/resources/xjb中

<jxb:bindings xmlns:jxb="http://java.sun.com/xml/ns/jaxb"
          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
          xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
          version="2.0"
          xsi:schemaLocation="../xsd/schema.xsd">
    <jxb:globalBindings>
        <xjc:simple/>
    </jxb:globalBindings>
</jxb:bindings>


任何提示如何解决这将是伟大的

好了,伙计们,我找到了问题所在。我在pom.xml中的
元素中缺少一个
元素!像这样:

<configuration>

<packageName>com.my.model.example</packageName>
<schemaDirectory>${project.basedir}/src/main/resources/xsd</schemaDirectory>
<bindingDirectory>${project.basedir}/src/main/resources/xjb</bindingDirectory>

<!-- tada! -->
<extension>true</extension>
</configuration>

com.my.model.example
${project.basedir}/src/main/resources/xsd
${project.basedir}/src/main/resources/xjb
真的