ant run.client参数传递dunno目录以放置i / p文件

时间:2013-03-11 13:05:05

标签: ant axis2

我正在尝试从axis2-1.6.2-bin样本运行示例代码,样本的名称是soapwithattachments。 。我已经运行generate.service命令来部署aar文件。 。但是当我运行ant run.client ank.txt c://。 。它说项目“SOAPWithAttachmentsSample”中不存在ank.txt,build.xml文件没有让我知道将文件放在哪里ank.txt。 。 。请帮忙,我的项目需要这个,截止日期快到了

<project name="SOAPWithAttachmentsSample" default="generate.service">  
    <property environment="env" />  
    <property name="axis2.home" value="../../" />  
    <property name="axis2.repo" value="${axis2.home}/repository" />  
    <property name="build.dir" value="build" />  
    <property name="client.classes.dir" value="${build.dir}/classes" />  
    <path id="axis.classpath">  
        <fileset dir="${axis2.home}/lib">  
            <include name="*.jar" />  
        </fileset>  
        <pathelement location="build/swaSampleClient.jar" />  
    </path>  

    <target name="generate.service" depends="compile">  
        <jar destfile="${build.dir}/sample-swa.aar">    
            <fileset dir="resources/">  
                <include name="META-INF/services.xml" />  
            </fileset>  
            <fileset dir="${build.dir}/classes">  
                <include name="sample/soapwithattachments/service/**/*.class" />  
            </fileset>  
        </jar>  
        <copy file="${build.dir}/sample-swa.aar" tofile="${axis2.home}/repository/services/sample-swa.aar" overwrite="true" />  
    </target>  

    <target name="compile">  
        <mkdir dir="${client.classes.dir}" />  
        <!-- Compile client -->  
        <javac debug="on"  srcdir="src" destdir="${client.classes.dir}">  
            <classpath refid="axis.classpath" />  
        </javac>  
    </target>  
    <target name="check-parameters">  
        <condition property="parameters.set">  
            <and>  
                <isset property="dest" />  
                <isset property="file" />  
            </and>  
        </condition>  
        <!-- This is a hack to get a if-else working in ant. Some much more "ANTy" person is welcome to improve this -->  
        <antcall target="print-usage" />  
    </target>  

    <target name="print-usage" unless="parameters.set">  
        <echo message="ant -Dfile <file to be transfered>  -Ddest <name of the destination file>" />  
    </target>  

    <target name="run.client" depends="compile,check-parameters" if="parameters.set">  
        <jar destfile="${build.dir}/swaSampleClient.jar">  
            <fileset dir="${build.dir}/classes">  
                <include name="sample/soapwithattachments/client/**/*.class" />  
            </fileset>  
        </jar>  
        <java classname="sample.soapwithattachments.client.SWAClient" classpathref="axis.classpath" fork="true">  
            <arg value="-file" />  
            <arg value="${file}" />  
            <arg value="-dest" />  
            <arg value="${dest}" />  
            <jvmarg value="-Daxis2.repo=${axis2.repo}" />  
        </java>  
    </target>  
    <target name="clean">  
        <delete dir="build" />  
    </target>  
</project>  

1 个答案:

答案 0 :(得分:0)

指定命令行ant run.client ank.txt c://时,将所有参数解释为要执行的目标。目标run.client存在,但其他两个显然不存在,因此您的错误消息。通过查看run.client目标,您似乎需要设置filedest的构建属性。查看build.xml中的使用目标。它显示了将构建属性作为构建属性传递给ant的语法,即使用-D<property>=<value>。在您的情况下,您可能需要以下内容:

ant run.client -Dfile=ank.txt -Ddest=c://