0
當我試圖運行我的ant文件時,我不斷收到這些錯誤。錯誤:包org.junit不存在
[javac] Compiling 8 source files to C:\Users\FaradaysCage\git\mancala\build [javac] C:\Users\FaradaysCage\git\mancala\src\tests\BoardDataTest.java:1: error: package org.junit does not exist [javac] import static org.junit.Assert.assertEquals; [javac] ^ [javac] C:\Users\FaradaysCage\git\mancala\src\tests\BoardDataTest.java:1: error: static import only from classes and interfaces [javac] import static org.junit.Assert.assertEquals; [javac]^ [javac] C:\Users\FaradaysCage\git\mancala\src\tests\BoardDataTest.java:2: error: package org.junit does not exist [javac] import org.junit.Test; [javac] ^ [javac] C:\Users\FaradaysCage\git\mancala\src\tests\BoardDataTest.java:8: error: cannot find symbol [javac] @Test
這是我的Ant構建文件
<project name="Mancala" default="fullBuild" basedir=".">
<description>
Build file for Mancala program. Currently handles compilation
and distribution. Will also include automated testing and
generation of documentation.
</description>
<!-- set global properties for this build -->
<property name="src" location="src" />
<property name="build" location="build" />
<property name="build.test" location="build/tests" />
<property name="dist" location="dist" />
<property name="test" location="src/tests" />
<property name="docs" location="docs" />
<property name="test.report" location="testreport" />
<!-- Define the classpath which includes the junit.jar-->
<!-- and the classes after compiling-->
<path id="junit.class.path">
<pathelement location="lib/junit-4.11.jar" />
<pathelement location="lib/hamcrest-core-1.3.jar" />
<pathelement location="${build}" />
</path>
<target name="init">
<!-- Create the time stamp -->
<tstamp />
<!-- Create the build directory structure used by compile -->
<mkdir dir="${build}" />
<!-- Create the testreport directory used by Junit -->
<mkdir dir="${test.report}" />
<!-- Create the build.test directory used by compile & Junit -->
<mkdir dir="${build.test}" />
</target>
<target name="compile" depends="init" description="compile the source">
<!-- Compile the java code from ${src} into ${build} -->
<javac srcdir="${src}" destdir="${build}" />
<javac srcdir="${test}" destdir="${build.test}" />
</target>
<!-- Run the JUnit Tests -->
<!-- Output is XML, could also be plain-->
<target name="junit" depends="compile">
<junit printsummary="on" fork="true" haltonfailure="yes">
<classpath>
<classpath refid="junit.class.path" />
<pathelement location="${build.test}" />
<formatter type="plain" />
<batchtest todir="${test.report}">
<fileset dir="${test}">
<include name="**/*Test*.java" />
</fileset>
</batchtest>
</classpath>
</junit>
</target>
<target name="doc" description="generate documentation">
<mkdir dir="${docs}" />
<javadoc sourcepath="${src}" destdir="${docs}">
<fileset dir="${src}" />
</javadoc>
</target>
<target name="dist" depends="compile" description="generate the distribution">
<!-- Create the distribution directory -->
<mkdir dir="${dist}/lib" />
<!-- Put everything in ${build} into the Mancala-${DSTAMP}.jar file -->
<jar jarfile="${dist}/lib/Mancala-${DSTAMP}.jar" basedir="${build}" />
</target>
<!-- Runs the compiled application -->
<target name="run" depends="compile">
<java classname="MancalaApp">
<classpath>
<pathelement location="${build}" />
</classpath>
</java>
</target>
<!--Add unit tests to build once implemented-->
<target name="fullBuild" depends="dist, doc, junit" description="create application, docs, and tests">
</target>
<target name="clean" description="clean up">
<!-- Delete the ${build} and ${dist} directory trees -->
<delete dir="${build}" />
<delete dir="${dist}" />
<delete dir="${docs}" />
<delete dir="${build.test}" />
<delete dir="${test.report}" />
</target>
</project>
我知道,不知怎的,我不包括的junit.jar到我的身材,但應被包括在內,因爲在我的路徑ID,和我在我的智慧結束時,我發現什麼是錯的。
預先感謝您
查看本文有關準備ant構建腳本[ant build script](http://ant.apache.org/manual/using.html#path)。我會嘗試一些如下' <文件集DIR = 「LIB」> <包括名稱= 「**/*。JAR」/> ' –
MSameer
*我不包括junit.jar到我的構建中,但它應該被包含,因爲在我的路徑ID *:不,它不應該。你爲什麼認爲它應該?你在文檔的某處看到過,如果路徑是用id定義的,它會自動添加到javac任務的類路徑中?不是。 –