【发布时间】:2018-01-22 13:35:06
【问题描述】:
我正在尝试从远程 wsdl 导入数据。我用maven简单的代码写了如下
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>jaxws-maven-plugin</artifactId>
<executions>
<execution>
<id>generate-stubs1</id>
<phase>process-classes</phase>
<goals>
<goal>wsimport</goal>
</goals>
<configuration>
<wsdlUrls>
<wsdlUrl>http://www.webservicex.com/globalweather.asmx?wsdl</wsdlUrl>
</wsdlUrls>
<packageName>com.sth.remote</packageName>
</configuration>
</execution>
</executions>
</plugin>
这个脚本的奇怪行为是它只在第一次工作。之后,例如“全新安装”,不再生成来自 wsdl 的 java 代码。在调试模式下,我得到了这个输出:
[DEBUG] -- end configuration --
[DEBUG] The wsdl Directory is Q:\workspace\xxx\src\wsdl
[INFO] No WSDLs are found to process, Specify at least one of the following parameters: wsdlFiles, wsdlDirectory or wsdlUrls.
如何解决这个问题?
更新:
我注意到当我删除目标目录然后刷新 eclipse 项目时,这个任务在 Eclipse 后台工作,以便 eclipse 编译代码并运行这个任务,但不是通过直接调用 mvn jaxws:wsimport。
更新 2:
还有什么,通过mvn jaxws:wsimport 运行的脚本似乎省略了我的配置,因为如果我更改例如staleFile
<staleFile>Q:\workspace\xxx\target\jaxws\stale2</staleFile>
我在调试中仍有信息表明正在使用 staleFile 的默认路径:
<staleFile default-value="${project.build.directory}/jaxws/stale"/>
...
[DEBUG] (f) staleFile = Q:\workspace\visasin-gwt\target\jaxws\stale
有人知道发生了什么吗? @dienerd 解决方案对我不起作用
【问题讨论】: