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
Java “故障排除”;无法创建任务或foreach类型";使用<;foreach>;_Java_Ant - Fatal编程技术网

Java “故障排除”;无法创建任务或foreach类型";使用<;foreach>;

Java “故障排除”;无法创建任务或foreach类型";使用<;foreach>;,java,ant,Java,Ant,我试图在Ant脚本中使用foreach循环,但得到的消息是:问题:未能创建任务或键入foreach原因:名称未定义 我不明白为什么这样不行。它不是第三方库。这是最新版本Ant(1.8)中的标准任务 这是一项标准的任务 Ant最新版本的一部分 (1.8) 不,不是。至少我在列表中的核心任务和可选任务中找不到它。 它似乎是的一部分,因此需要单独安装。我在Ant 1.8手册中找不到foreach任务-它在哪里?我只知道ant contrib的任务,它需要指定“target”属性:我在eclipse

我试图在Ant脚本中使用foreach循环,但得到的消息是:问题:未能创建任务或键入foreach原因:名称未定义

我不明白为什么这样不行。它不是第三方库。这是最新版本Ant(1.8)中的标准任务


这是一项标准的任务 Ant最新版本的一部分 (1.8)

不,不是。至少我在列表中的核心任务和可选任务中找不到它。
它似乎是的一部分,因此需要单独安装。

我在Ant 1.8手册中找不到foreach任务-它在哪里?我只知道ant contrib的任务,它需要指定“target”属性:

我在eclipse下遇到了不同版本的ant的相同问题

在eclipse下不添加参数的情况下将其添加到代码中(不要指定任何类路径):


您是否考虑过
?在这个标签中,您可以使用一些著名的脚本语言,如javascript和python。他们还可以与项目、任务。。。对象,这意味着您可以设置/获取属性,甚至可以执行其他任务。看看这个来自《用ant开发java》一书的例子


使用脚本任务生成一个随机数,然后
打印出来
随机数为${Random}

您尚未定义要调用的目标:

<foreach param="instance" list="a,b,c,d,e" target="processListItem" />

或者:

<for param="instance" list="a,b,c,d,e" >
  <sequential>
    <!-- Do Something with @{instance} -->
  </sequential>
</for>


当我说各种版本:ie 1.6和1.7…^但首先作为第三方尝试一下。升级到1.9[从1.7]似乎可以解决这个问题[在这种情况下,必须将ANT_HOME设置为我的ANT 1.9 dir,然后它才能工作]
    <project name="script_example" default="test-random">
      <description>
        Use a script task to generate a random number, then
        print it
      </description>
      <target name="random">
        <script language="javascript"><![CDATA[
          //NB: an unqualified Math is the JavaScript object
          var r=java.lang.Math.random();
          var num = Math.round(r*10);
          project.setNewProperty("random", num);
          self.log("Generated random number " + num, project.MSG_DEBUG);
        ]]>
        </script>
      </target>
      <target name="test-random" depends="random">
        <echo>Random number is ${random}</echo>
      </target>
    </project>
<foreach param="instance" list="a,b,c,d,e" target="processListItem" />
<for param="instance" list="a,b,c,d,e" >
  <sequential>
    <!-- Do Something with @{instance} -->
  </sequential>
</for>