我之前使用 wsimport 生成了一个 Metro 客户端,但在这种情况下,WSDL 是通过 https 访问的。我的命令看起来像这样:
wsimport https://service.net/services/Service?wsdl -d C:\ClientProject\src\main\java -keep
一切正常。现在我正在尝试生成一个客户端,但是,我只有 WSDL 文件的本地副本。我的项目目录是这样设置的(在 c:\Devel 中):
ClientProject
|- src
|- main
|- java
|- resources
|- META-INF
|- service.wsdl
|- wsimport.bat
wsimport.bat 文件如下所示:
wsimport -keep -d ../src/main/java -wsdlLocation ../src/resources/META-INF/service.wsdl
它基于 Metro Guide 示例,但没有 -p 选项(http://metro.java.net/guide/Developing_client_application_with_locally_packaged_WSDL.html)。然而,当我运行 bat 文件时,我得到一个无限循环的命令被打印到控制台。例如
C:\Devel\ClientProject>wsimport -keep -d ../src/main/java -wsdlLocation ../src/resources/META-INF/service.wsdl
有人可以指出我做错了什么吗?
更新
我尝试使用绝对路径(并重新排列参数顺序无济于事。我仍然得到无尽的命令控制台打印:
wsimport C:\Devel\ClientProject\src\resources\META-INF\service.wsdl -d C:\Devel\ClientProject\src\main\java -keep