我正在从事一个相当大的Web Services项目,涉及超过20个不同的WebServices。这些Web Services虽然相互独立,但共享一组相当大的公共类型。我们在构建脚本中使用wsimport作为Ant目标来生成代理类。
问题: 随着我们Web Services(和相应的WSDL)数量的增加,我们注意到代理类的构建时间正在急剧上升。经过进一步的调查(和分析),我们发现wsimport花费了大量的时间来重复生成公共类型。现在已经达到一个点,生成、编译和打包这些代理类和它们的公共类型需要大约15-20分钟。这对我们来说是一个问题,我们正在寻找缩短构建时间的方法。
问题: 是否有一种方法只生成公共类型一次?我已经看过一些通过Google找到的解决方案。其中一个涉及编写一个,将WSDL解析并合并成单个WSDL,以便只调用一次wsimport。另一个暗示使用,但进一步的调查只得出使用该方法存在问题。
注:我看到一些旧的类似问题,但其中没有任何答案。
wsimport multiple generated wsdl's
How can I tell wsimport that separate WSDL files are referring to the same object classes?