Я провел пару часов с этой проблемой сегодня.У меня были файлы .jar, все указанные в Eclipse через Project | Properties | Java Build Path, но я все еще получал ошибку
<classpath> for <junit> must include junit.jar if not in Ant's own classpath
при запуске Ant из Eclipse.
Запуск Ant из командной строки будет работать нормально (у меня все было в переменной окружения classpath).
Но в Eclipse единственное, что работало, было явное указание classpath внутри элементов,Например:
<path id="JUnit 4.libraryclasspath">
<pathelement location="...\plugins\org.junit_4.11.0.v201303080030\junit.jar"/>
<pathelement location="...\plugins\org.hamcrest.core_1.3.0.v201303031735.jar"/>
<pathelement location="...\lib\ant-junit4.jar"/>
</path>
<path id="Ant1.classpath">
<pathelement location="bin"/>
<pathelement location="."/>
<path refid="JUnit 4.libraryclasspath"/>
</path>
... stuff...
<target name="test1" depends="compile">
<junit>
<classpath refid="Ant1.classpath"/>
</junit>
</target>
Без явного указания пути к классу в элементе junit, он будет каждый раз прерываться в затмении, даже просто голый
<junit/>
ссылка
IЯ не эксперт, просто сообщаю, что сработало сегодня.
-ctb