蚂蚁构建脚本找不到JUnit软件包

时间:2020-03-08 19:01:06

标签: java junit ant

我正在使用Ant编写构建脚本。我已经成功地使用它来编译Java类。但是,在编译JUnit测试文件时,构建脚本会失败。错误是找不到软件包JUnit。

我下载了以下文件,并将它们放在一个名为 junit 的文件夹中:

apiguardian-api-1.1.0.jar
junit-platform-commons-1.6.0.jar
junit-platform-suite-api-1.6.0.jar
junit-jupiter-api-5.6.0.jar
junit-platform-engine-1.6.0.jar
junit-vintage-engine-5.6.0.jar
junit-jupiter-engine-5.6.0.jar
junit-platform-launcher-1.6.0.jar junit.jar
junit-jupiter-params-5.6.0.jar
junit-platform-runner-1.6.0.jar
opentest4j-1.2.0.jar

我的JUNIT环境变量是 / Users / NhatAnh / junit

这是我的构建脚本:

<?xml version="1.0"?>

<project name="hw02" basedir="." default="clean">
    <property environment="env"/>
    <echo message="JUNIT: ${env.JUNIT}"/>
    <echo message="ANT_HOME: ${env.ANT_HOME}"/>

    <property name="src" location="src"/>
    <property name="bin" location="bin"/>
    <property name="test.src" location="test/src" />
    <property name="test.bin" location="test/bin" />
    <property name="test.reports" location="test/reports" />

    <path id="classpath">
        <pathelement location="bin"/>
        <pathelement location="test/bin" />
        <fileset dir="${env.JUNIT}" includes="org.junit*.jar" excludes="org.junit.vintage.*.jar" />
        <fileset dir="${env.JUNIT}" includes="org.opentest4j*.jar" />
        <fileset dir="${env.JUNIT}" includes="org.apiguardian*.jar" />
    </path>
    <echo message="${toString:classpath}"/>

    <target name="init">
        <mkdir dir="${bin}"/>
        <mkdir dir="${test.bin}"/>
        <mkdir dir="${test.reports}"/>
    </target>

    <target name="compile" depends="init">
        <javac srcdir="${src}" destdir="${bin}" includeAntRuntime="no">
            <classpath refid="classpath"/>
            <include name="edu/umb/cs680/hw02/Calculator.java"/>
        </javac>
    </target>

    <target name="compile-test" depends="compile">
        <javac srcdir="${test.src}" destdir="${test.bin}" includeAntRuntime="no">
            <classpath refid="classpath"/>
            <include name="edu/umb/cs680/hw02/CalculatorTest.java"/>
        </javac>
    </target>

    <target name="run-test" depends="compile-test">
        <junitlauncher printSummary="true">
            <classpath refid="classpath" />
            <testclasses outputdir="test">
                <fileset dir="${test.bin}">
                    <include name="edu/umb/cs680/hw02/*Test.class"/>
                </fileset>
                <listener type="legacy-plain" sendSysOut="true"/>
            </testclasses>
        </junitlauncher>
    </target>


    <target name="run" depends="run-test">
        <java classname="edu.umb.cs680.hw02.Calculator"
              classpathref="classpath"
              fork="true"/>
    </target>


    <target name="clean" depends="run">
        <delete includeemptydirs="true">
            <fileset dir="${bin}/edu/umb/cs680/hw02" includes="**/*"/>
            <fileset dir="${test.bin}/edu/umb/cs680/hw02" includes="**/*" />
        </delete>
    </target>

</project>

这是我在运行构建脚本时遇到的错误

Buildfile: /用户/ NhatAnh /文档/研究/UMASS/S20/CS680/CS680-UMB/HW02/build.xml [echo] JUNIT:/ Users / NhatAnh / junit [echo] ANT_HOME:/Users/NhatAnh/apache-ant-1.10.7 [回声] / Users / NhatAnh / Documents / Study / UMASS / S20 / CS680 / CS680-UMB / HW02 / bin:/ Users / NhatAnh / Documents / Study / UMASS / S20 / CS680 / CS680-UMB / HW02 / test / bin

init:

编译:

编译测试: [javac]将1个源文件编译到/ Users / NhatAnh / Documents / Study / UMASS / S20 / CS680 / CS680-UMB / HW02 / test / bin [javac] /Users/NhatAnh/Documents/Study/UMASS/S20/CS680/CS680-UMB/HW02/test/src/edu/umb/cs680/hw02/CalculatorTest.java:3: 错误:软件包org.junit.jupiter.api不存在 [javac]导入静态org.junit.jupiter.api.Assertions。*; [javac] ^ [javac] /Users/NhatAnh/Documents/Study/UMASS/S20/CS680/CS680-UMB/HW02/test/src/edu/umb/cs680/hw02/CalculatorTest.java:4: 错误:软件包org.junit.jupiter.api不存在 [javac] import org.junit.jupiter.api.Test; [javac] ^ [javac] /Users/NhatAnh/Documents/Study/UMASS/S20/CS680/CS680-UMB/HW02/test/src/edu/umb/cs680/hw02/CalculatorTest.java:7: 错误:找不到符号 [javac] @Test [javac] ^ [javac]符号:类Test [javac]位置:类CalculatorTest [javac] /Users/NhatAnh/Documents/Study/UMASS/S20/CS680/CS680-UMB/HW02/test/src/edu/umb/cs680/hw02/CalculatorTest.java:15: 错误:找不到符号 [javac] @Test [javac] ^ [javac]符号:类Test [javac]位置:类CalculatorTest [javac] /Users/NhatAnh/Documents/Study/UMASS/S20/CS680/CS680-UMB/HW02/test/src/edu/umb/cs680/hw02/CalculatorTest.java:23: 错误:找不到符号 [javac] @Test [javac] ^ [javac]符号:类Test [javac]位置:类CalculatorTest [javac] /Users/NhatAnh/Documents/Study/UMASS/S20/CS680/CS680-UMB/HW02/test/src/edu/umb/cs680/hw02/CalculatorTest.java:12: 错误:找不到符号 [javac] assertEquals(actual,expected); [javac] ^ [javac]符号:方法assertEquals(float,float) [javac]位置:类CalculatorTest [javac] /Users/NhatAnh/Documents/Study/UMASS/S20/CS680/CS680-UMB/HW02/test/src/edu/umb/cs680/hw02/CalculatorTest.java:20: 错误:找不到符号 [javac] assertEquals(actual,expected); [javac] ^ [javac]符号:方法assertEquals(float,float) [javac]位置:类CalculatorTest [javac] /Users/NhatAnh/Documents/Study/UMASS/S20/CS680/CS680-UMB/HW02/test/src/edu/umb/cs680/hw02/CalculatorTest.java:28: 错误:找不到符号 [javac] fail(“除以零”); [javac] ^ [javac]符号:方法fail(String) [javac]位置:类CalculatorTest [javac] /Users/NhatAnh/Documents/Study/UMASS/S20/CS680/CS680-UMB/HW02/test/src/edu/umb/cs680/hw02/CalculatorTest.java:30: 错误:找不到符号 [javac] assertEquals(“除以零”,e.getMessage()); [javac] ^ [javac]符号:方法assertEquals(String,String) [javac]位置:类CalculatorTest [javac] 9个错误

0 个答案:

没有答案