2012-09-13 67 views
1

调用WSDL代码生成器我有这个ant脚本来运行:无法从Ant脚本

<?xml version="1.0" encoding="utf-8"?> 
    <project name="WebserviceClient"> 
     <property file="myaxis.properties"/> 
     <property name="build.dir" value="./src"/> 
     <path id="axis2.classpath"> 
      <fileset dir="lib"> 
       <include name="*/.jar"/> 
      </fileset> 
     </path> 

     <target name="GenerateGCWebServiceClient" > 
      <java classname="org.apache.axis2.wsdl.WSDL2Java" fork="true" dir="${build.dir}"> 
       <classpath refid="axis2.classpath"/> 
       <sysproperty key="log4j.configuration" value="log4j.properties"/> 
       <arg value="-uri"/> 
       <arg value="http://192.168.0.251:9081/Services/MyWebService.svc?wsdl"/> 
       <arg value="-d"/> 
       <arg value="adb"/> 
       <arg value="-ETransfer-Encoding"/> 
       <arg value="false"/> 
       <arg value="-S"/> 
       <arg value="."/> 
       <arg value="-u"/> 
       <arg value="-wv"/> 
       <arg value="1.1"/> 
       <arg value="-p"/> 
       <arg value="com.sands.service"/> 
       <arg value="-ns2p"/> 

      </java> 
     </target> 

    </project> 

但它无法找到org.apache.axis2.wsdl.WSDL2Java。 这里是堆栈跟踪:

> build.xml 
property 
property 
path 
GenerateGCWebServiceClient 
java 
java.lang.NoClassDefFoundError: org/apache/axis2/wsdl/WSDL2Java 
Caused by: java.lang.ClassNotFoundException: org.apache.axis2.wsdl.WSDL2Java 
    at java.net.URLClassLoader$1.run(URLClassLoader.java:200) 

回答

1

找不到我们需要您的脚本库文件,准确的说,它是axis2-codegen-x.y.z.jar。 在Ant脚本,你犯了一个错误,因为它无法找到* .jar文件:

改变这一行:

<include name="*/.jar"/> 

到:

<include name="*/*.jar"/> 

那么它应该工作。