java - 无法从 ant 脚本调用 wsdl 代码生成器

标签 java ant wsdl apache-axis

我要运行这个 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)

最佳答案

您的脚本找不到所需的库文件,确切地说,它是 axis2-codegen-x.y.z.jar 。 在你的 ant 脚本中你犯了一个错误,因为它找不到 *.jar 文件:

更改此行:

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

至:

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

那么它应该可以工作。

关于java - 无法从 ant 脚本调用 wsdl 代码生成器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12400149/

相关文章:

java - 绘制节点的图片以及它们指向的位置

java - 如何开始输出一个新行然后返回到上一行java

Eclipse:导出到 .jar 并包含资源文件 (ANT)

python - 当 wsdl 不包含时如何设置 suds 架构位置

c# - 在 WCF 中支持具有属性的 XSD

java - 如何指定 Web 服务方法的字符串参数名称

java - TwoDArrayWritable 中的行列值

java - 将 TreeMap 中的列值映射为键,以行号作为值

java - 使用ANT自动切换JDK/JRE版本

java - Ant 作为项目中的依赖项,该项目也使用 Ant 进行构建/测试