我有两个XSD文件。一个用于生成一大堆Java源代码。我即将构建另一个XSD来为另一个项目创建类。我想使用第一个XSD的类构建作为"类型"在我的第二个XSD。 我尝试在第二个XSD中导入第一个XSD。 但是,通过这个,第一个XSD的一大堆类再次构建。 我想在我的新XSD中使用正确的引用(类名和包名)为旧的类构建一个新类。
样品: oldXSD:
<xs:element name="OldClass",....
<xs:element name="OtherClass1",...
<xs:element name="OtherClass2",...
etc
newXSD:
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://new.namespace.com"
xmlns:empns="http://new.namespace.com"
xmlns:Q1="http://old.namespace.com">
<xs:import namespace="http://old.namespace.com"
schemaLocation="../oldXSD.xsd" />
<xs:element name="bookingStatus" type="empns:BookingStatus"></xs:element>
<xs:complexType name="BookingStatus">
<xs:sequence>
<xs:element name="userId" type="xs:string" minOccurs="1"
maxOccurs="1" />
<xs:element name="userName" type="xs:string"
minOccurs="1" maxOccurs="1" />
<xs:element name="oldclasses" type="Q1:OldClass" minOccurs="0"
maxOccurs="unbounded" />
</xs:sequence>
</xs:complexType>
</xs:schema>
pom-definition是这样的:
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxb2-maven-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>json</id>
<goals>
<goal>xjc</goal>
</goals>
<configuration>
<outputDirectory>target/generated-sources/jaxb</outputDirectory>
<packageName>getting.started.with.jaxb.generated</packageName>
<schemaDirectory>src/main/resources/json</schemaDirectory>
<schemaFiles>newXSD.xsd</schemaFiles>
</configuration>
</execution>
</executions>
</plugin>
任何想法如何完成这件事表示赞赏。我不知道怎么在这里继续。是否有#34;入门&#34;或其他类型的文件?我只发现了一些关于具体问题的讨论,但没有什么非常基本的。