[英]Auto name resolution for jaxb plugin
無論如何在這里做自動名稱解析。 我不想要 static 類,因此使用綁定。 但是在生成 pojo 時出現錯誤
[錯誤] 文件:/C:/Projects/custom-mapping/transformer/src/main/resources/xsd/input2.xsd [71,51] org.xml.facex.SAXParseException:同名“Aintername”/ com.mypack.mapper.model.input.TradePartner”已在使用中。 使用 class 自定義來解決此沖突。
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>2.5.0</version>
<executions>
<execution>
<goals>
<goal>xjc</goal>
</goals>
</execution>
</executions>
<configuration>
<packageName>com.mypack.mapper.model.input</packageName>
<sources>
<source>src/main/resources/xsd/input.xsd</source>
</sources>
<xjbSources>
<xjbSource>src/main/resources/xsd/binding.xjb</xjbSource>
</xjbSources>
</configuration>
</plugin>
binding.xjb 在哪里
<jaxb:bindings
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:jaxb="http://java.sun.com/xml/ns/jaxb"
version="2.1">
<jaxb:globalBindings localScoping="toplevel"/></jaxb:bindings>
嘗試將-XautoNameResolution
參數放入您的<configuration>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>2.5.0</version>
<executions>
<execution>
<goals>
<goal>xjc</goal>
</goals>
</execution>
</executions>
<configuration>
<arguments>
<arg>-XautoNameResolution</arg>
</arguments>
<packageName>com.mypack.mapper.model.input</packageName>
<sources>
<source>src/main/resources/xsd/input.xsd</source>
</sources>
<xjbSources>
<xjbSource>src/main/resources/xsd/binding.xjb</xjbSource>
</xjbSources>
</configuration>
</plugin>
它將生成名稱如 ConfilctClass1、ConfilctClass2 等的類。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.