在具有类似包结构的另一个源文件夹中为junit测试用例编译错误

时间:2011-09-21 15:31:08

标签: java ant junit javac

    <target name="compile.src" depends="init" description="compile the source code " >
        <javac srcdir="${src}" destdir="${build}/src">

            <classpath>
                <fileset dir="lib">
                    <include name="**/*.jar"/>
                </fileset>
            </classpath>
        <compilerarg value="-Xlint"/>
        </javac>
    </target>

<path id="classpath.test">
    <fileset dir="${basedir}/lib">
        <include name="**/*.jar"/>
    </fileset>
    <fileset dir="${build}/src">
            <include name="**/*.class"/>
    </fileset>
 </path>

<echo>${src.test} and tausif ${build}\test </echo>
<target name="compile.test" depends="compile.src" description="compile the test code " >
        <javac srcdir="${src.test}" destdir="${build}/test" debug="true" classpathref="classpath.test">
            <!--classpath refid="classpath.test" /-->
        <compilerarg value="-Xlint"/>
        </javac>
</target>

我的项目结构是

project 
   > src 
      > example.samplePackage
   > test 
      > example.samplePackage

我正在尝试在src中编译第一个源文件夹,然后尝试在类似包结构的test source文件夹中编译junit测试用例期间包含所有类文件。 但它显示在Error.Please下面。

   [javac] C:\Project\test\examples\samplePackage\SampleTest.java:9: cannot find symbol
   [javac] symbol  : class Sample
   [javac] location: package examples.samplePackage
   [javac] import example.samplePackage.Sample;
                                       ^

1 个答案:

答案 0 :(得分:0)

您的compile.test Ant目标使用compile.test类路径,该路径声明为:

<path id="classpath.test">
<fileset dir="${basedir}/lib">
    <include name="**/*.jar"/>
</fileset>
<fileset dir="${build}/src">
        <include name="**/*.class"/>
</fileset>

其中包含“C:\ Project \ test \”文件夹吗?