我會建議把CommonTypes.xsd放到一個額外的Maven項目中,該項目被部署到你的Maven倉庫。爲了簡單起見,我將創建這個jar項目,只包含xsd文件。
的你了projectA和B可以使用maven-dependency-plugin到xsd解壓到項目A/B一個特定的文件夾,您的WSDL是期待的xsd:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<version>2.7</version>
<executions>
<execution>
<id>unpack</id>
<phase>generate-sources</phase>
<goals>
<goal>unpack</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>groupId</groupId>
<artifactId>commont-types-xsd</artifactId>
<version>1.0</version>
<type>jar</type>
<overWrite>true</overWrite>
<outputDirectory>${project.build.directory}/alternateLocation</outputDirectory>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
也許你需要玩的執行順序因爲jaxws-plugin也在generate-sources循環中運行,或者可能會將依賴項插件更改爲早期階段。
另一種解決方案是創建額外的項目,並有類似於目錄服務服務器的東西,如果您存儲所有項目中常見的xsd文件,並且wsdl只需指向此服務器url即可。
我接受這個答案,因爲這正是我現在正在做的。 – 2013-05-14 01:01:51