Dim*_*tis 14 java web-services jax-ws
我在许多不同的地方看到了同样的问题,即使经过大量的谷歌搜索,我也无法解决它.我想要做的事情(更大的图片)是通过java网络服务教程,这看起来似乎不同步,
特别是在这里,当我尝试编译时,我收到以下消息:
C:\ javaeetutorial5\examples\jaxws\common\targets.xml:26:无法找到taskdef类com.sun.tools.ws.ant.WsImport
我尝试了许多不同的放置罐子或改变环境变量的组合,但没有结果.有成功的故事吗?
完整生成错误消息如下:
建筑失败
C:\ javaeetutorial5\examples\jaxws\helloservice\build.xml:4:执行此行时发生以下错误:
C:\ javaeetutorial5\examples\jaxws\common\targets.xml:26:taskdef无法找到类com.sun.tools.ws.ant.WsImport所需的类:org/apache/tools/ant/DynamicConfigurator
使用类加载器AntClassLoader [C:\ Program Files(x86)\ Java\jdk1.6.0_23\lib\tools.jar]
总时间:0秒
和相应的taskdef:
<taskdef name="wsimport" classname="com.sun.tools.ws.ant.WsImport">
<classpath refid="jaxws.classpath"/>
</taskdef>
Run Code Online (Sandbox Code Playgroud)
还可以查看认可目录:
C:\javaeetutorial5\kschneid>cd %JAVA_HOME%
C:\Program Files (x86)\Java\jdk1.6.0_23>dir lib\endorsed
Volume in drive C is OSDisk
Volume Serial Number is AAAA-BBBB
Directory of C:\Program Files (x86)\Java\jdk1.6.0_23\lib\endorsed
25/02/2011 09:34 <DIR> .
25/02/2011 09:34 <DIR> ..
25/02/2011 09:34 105,134 jaxb-api.jar
25/02/2011 09:33 54,476 jaxws-api.jar
2 File(s) 159,610 bytes
2 Dir(s) 110,907,056,128 bytes free
C:\Program Files (x86)\Java\jdk1.6.0_23>
Run Code Online (Sandbox Code Playgroud)
小智 12
好吧,显然链接到一个解决这个问题的网站是不可接受的,所以我会在这里粘贴答案:
<property name="BUILD_LIBS" location="C:/Projects/Build/Libs/" />
<taskdef name="wsimport" classname="com.sun.tools.ws.ant.WsImport">
<classpath>
<pathelement location="${BUILD_LIBS}/jaxws-ri/lib/jaxws-tools.jar"/>
</classpath>
</taskdef>
Run Code Online (Sandbox Code Playgroud)
问题是由于相关的jaxws jar没有在类路径中看到上面的pathelement节点.将jar添加到类路径可以解决问题.
Bab*_*emi 10
你可以修复Netbeans xy中的问题,如下所示:
其中xy = 7.1,7.2,8.0等
该<wsimport>Ant任务不包含在JDK,即使是不完全一样的一个wsimport.exe.
如果你真的想要ant任务,你可以下载jaxws-ri并使用lib文件夹中的23(!)jar.
或者,您可以通过调用wsimport.exe来使用此解决方法:
<target name="generate-client" >
<exec executable="${java.home}/../bin/wsimport">
<arg line="-keep -d build/classes -p ebay.apis -s src -wsdllocation http://localhost:7070/Ebay?wsdl eBaySvc.wsdl"/>
</exec>
</target>
Run Code Online (Sandbox Code Playgroud)
我找到了一个根本不能让我满意的答案:Installed netbeans,它负责将事物连接在一起。命令行仍然不起作用(这意味着它划分了良好的环境)。我可以跟进教程,但我仍然相信一切都应该从命令行完成(我的饮食中是否有太多 Unix?)
| 归档时间: |
|
| 查看次数: |
50735 次 |
| 最近记录: |