我需要在生成的类中定义XmlRootElement。但是,得到这个错误:
[jaxb] [ERROR] [ERROR] Unsupported binding namespace "http://annox.dev.java.net". Perhaps you meant "http://java.sun.com/xml/ns/jaxb/xjc"?
这是我的绑定文件:
<jaxb:bindings xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns:xjc="http://java.sun.com/xml/ns/jaxb/xjc"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:annox="http://annox.dev.java.net"
xsi:schemaLocation="http://java.sun.com/xml/ns/jaxb
http://java.sun.com/xml/ns/jaxb/bindingschema_2_0.xsd http://annox.dev.java.net "
jaxb:extensionBindingPrefixes="xjc annox" version="2.1">
<jaxb:bindings schemaLocation="../target/src/schema/xmlSchema.xsd" node="/xs:schema">
<jaxb:bindings node="xs:complexType[@name='ReportSubmission']">
<annox:annotate>
<annox:annotate annox:class="javax.xml.bind.annotation.XmlRootElement"
name="ReportSubmission"/>
</annox:annotate>
</jaxb:bindings>
</jaxb:bindings>
</jaxb:bindings>
我正在使用Maven 1和一个具有ant任务的插件。插件在plugin.properties中设置为true。我在使用Maven 2的另一个应用程序中使用了非常相似的模式,所以我认为模式是正确的并且错误消息有点误导。也许我错过了一个罐子?我正在使用的罐子是:
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
<version>2.2.1</version>
<properties/>
</dependency>
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
<version>2.2.1</version>
<properties/>
</dependency>
感谢任何想法,谢谢。