Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Command line 在编写ant目标时需要帮助吗_Command Line_Ant - Fatal编程技术网

Command line 在编写ant目标时需要帮助吗

Command line 在编写ant目标时需要帮助吗,command-line,ant,Command Line,Ant,我对编写ant目标还不熟悉。 我必须将3个参数从命令行传递给java程序。所有这些都可以是可选的,并且可以有空格。 如何使用ant target实现这一点 <target name="run"> <java jar="YourJavaClassOrJAR" failonerror="true" fork="true" inputstring=""> <arg value="${arg1}" /> &

我对编写ant目标还不熟悉。 我必须将3个参数从命令行传递给java程序。所有这些都可以是可选的,并且可以有空格。 如何使用ant target实现这一点

    <target name="run">
       <java jar="YourJavaClassOrJAR" failonerror="true" fork="true" inputstring="">
          <arg value="${arg1}" />
          <arg value="${arg2}" />
          <arg value="${arg3}" />
       </java>
    </target>
我尝试使用,但如果它用空格分隔参数。那么,如果我的第一个论点有空间 它将空格后的单词作为第二个参数

    <target name="run">
       <java jar="YourJavaClassOrJAR" failonerror="true" fork="true" inputstring="">
          <arg value="${arg1}" />
          <arg value="${arg2}" />
          <arg value="${arg3}" />
       </java>
    </target>
我也试过使用 它需要空格,但必须使用参数

    <target name="run">
       <java jar="YourJavaClassOrJAR" failonerror="true" fork="true" inputstring="">
          <arg value="${arg1}" />
          <arg value="${arg2}" />
          <arg value="${arg3}" />
       </java>
    </target>
在我的java代码中,如果缺少任何参数,我必须为这些参数设置默认值

    <target name="run">
       <java jar="YourJavaClassOrJAR" failonerror="true" fork="true" inputstring="">
          <arg value="${arg1}" />
          <arg value="${arg2}" />
          <arg value="${arg3}" />
       </java>
    </target>

我怎样才能做到这一点。

如果您已经准备好JAR文件,您可以实现以下目标:

<target name="runJar">
   <java jar="/home/phil/application.jar" failonerror="true" fork="true" inputstring="">
      <arg value="arg1" />
      <arg value="arg2" />
      <arg value="arg3" />
   </java>
</target>
    <target name="run">
       <java jar="YourJavaClassOrJAR" failonerror="true" fork="true" inputstring="">
          <arg value="${arg1}" />
          <arg value="${arg2}" />
          <arg value="${arg3}" />
       </java>
    </target>

你的问题我不太清楚。但我认为你们想要的是在java程序中,你们可以传递参数。若只有一个参数,那个么它将另外两个作为默认值。 所以你可以这样做。不过我还没试过

<!-- These properties will no set since you are passing argument from -D param 
    <target name="run">
       <java jar="YourJavaClassOrJAR" failonerror="true" fork="true" inputstring="">
          <arg value="${arg1}" />
          <arg value="${arg2}" />
          <arg value="${arg3}" />
       </java>
    </target>

    <target name="run">
       <java jar="YourJavaClassOrJAR" failonerror="true" fork="true" inputstring="">
          <arg value="${arg1}" />
          <arg value="${arg2}" />
          <arg value="${arg3}" />
       </java>
    </target>

从命令行可以说
ant-Darg1=xxx

    <target name="run">
       <java jar="YourJavaClassOrJAR" failonerror="true" fork="true" inputstring="">
          <arg value="${arg1}" />
          <arg value="${arg2}" />
          <arg value="${arg3}" />
       </java>
    </target>