Ant无法识别其lib目录中的JUnit jar?

Ant无法识别其lib目录中的JUnit jar?,ant,jar,junit,javac,Ant,Jar,Junit,Javac,我在WindowsXP下使用Cygwin,我试图让Ant使用JUnit,而不为它编码任何类路径条目。JUnit的文档说我可以: 将junit.jar和ant-junit.jar放在ant_HOME/lib中 我手边的JUnit在运行中的精美副本说: 您可能已经注意到,您没有显式地将JUnit JAR添加到类路径中。请记住,在安装Ant时,为了使用JUnit Ant任务,您将JUnit JAR文件复制到${Ant_HOME}/lib目录。因为junit.jar已经在类路径上,所以不需要在javac

我在WindowsXP下使用Cygwin,我试图让Ant使用JUnit,而不为它编码任何类路径条目。JUnit的文档说我可以:

将junit.jar和ant-junit.jar放在ant_HOME/lib中

我手边的JUnit在运行中的精美副本说:

您可能已经注意到,您没有显式地将JUnit JAR添加到类路径中。请记住,在安装Ant时,为了使用JUnit Ant任务,您将JUnit JAR文件复制到${Ant_HOME}/lib目录。因为junit.jar已经在类路径上,所以不需要在javac任务中指定它来编译测试

$ANT_HOME设置为ANT安装目录。在lib子目录中,我看到ant-junit.jar(与ant一起安装)和junit-4.9.jar(由我复制)。看起来还好吧?但测试编译步骤失败:

[javac] Compiling 1 source file to E:\tools\ctg\bin\test
[javac] E:\tools\ctg\src\test\TestAll.java:3: package org.junit does not exist
[javac] import org.junit.*;
等等。我尝试将junit-4.9.jar重命名为junit.jar。没有快乐。我查看了一下jar文件,发现包确实存在于其中。事实上,如果我在Ant类路径中显式地包含这个jar文件,那么编译就可以正常工作

呜呜。你有没有想过会有什么问题?谢谢

编辑:根据请求,以下是javac目标:

<path id="classpath">
   <pathelement location="${app-bin}"/>
   <pathelement location="${test-bin}"/>
   <!--pathelement location="${junit-bin}"/-->
</path>

<target name="compile-test" depends="compile-app">
   <javac srcdir="${test-src}"
          destdir="${test-bin}"
          source="${java}"
          target="${java}"
          debug="on"
          includeantruntime="false">
      <compilerarg value="-Xlint"/>
      <classpath refid="classpath"/>
   </javac>
</target>


注意,JUnit二进制文件被注释掉了。我的目标是删除它并进行编译。

尝试从junit jar文件名中删除版本号。
i、 e.将junit-4.9.jar重命名为junit.jar,在编译的lib目录中告诉您


您必须将jar添加到一个类路径中,然后将其提供给javac目标。或者将属性设置为true。

您可以发布您的javac目标吗?javac目标现在在问题文本中。哈!当然完美的我将值更改为“true”,它立即工作正常/facepalm/谢谢。这花了很长时间才弄明白:(