2016-07-11 45 views
1

我想使用Ant执行单元测试。然而,即使我已经包含了包的类路径,我也会收到错误“包不存在”。在Eclipse“包不存在”错误构建JUnit测试与蚂蚁

文件夹结构

MyProject 
    - src 
    - com.project.core 
     - MyApp.java 
    - lib (contains all jar files and class files) 

UnitTests 
    - src 
    - com.project.core.tests 
     - MyAppTest.java 
    - lib (contains all jar files) 
    - build.xml 

的build.xml

<?xml version="1.0"?> 
<project name="Learning TestNG" basedir="." default="build"> 

<property name="src.dir" value="C:/UnitTests/src/com/Project/core/tests/"/> 
<property name="build.dir" value="build"/> 
<property name="src.jars" value="C:/MyProject/lib"/> 
<property name="unit.test.jars" value="C:/UnitTests/lib"/> 


<!--Define classpath --> 

<path id="master-classpath"> 

    <fileset dir="${src.jars}"> 
     <include name="**/*.jar"/> 
    </fileset> 

    <fileset dir="${unit.test.jars}"> 
     <include name="**/*.jar"/> 
    </fileset> 

</path> 

<!--Print out path --> 

<pathconvert pathsep="${line.separator}| |-- "    
      property="echo.path.compile"    
      refid="master-classpath"> 
</pathconvert> 

<echo>${echo.path.compile}</echo> 

<!-- Main Build --> 

<target name="build" description="Compile source tree java files"> 
    <mkdir dir="${build.dir}"/> 

    <javac destdir="${build.dir}" source="1.7" target="1.7" debug="on" includeantruntime="false" > 
     <classpath refid="master-classpath"/> 
     <src path="${src.dir}"/> 
    </javac> 
</target> 
</project> 

错误

[javac] Compiling 1 source file to C:/UnitTests/build 
[javac] C:\MyProject\src\com\project\core\MyApp.java:14: error: package com.project.example does not exist 
[javac] import com.project.example.AddNumbers; 

我甲肾上腺素编辑了解为什么当我将类路径设置为.class文件时出现此错误?我已经尝试了一切。也许这是一个Ant问题?

回答

0

更改src.dir

<property name="src.dir" value="C:/UnitTests/src"/>

源目录应在包的根目录开始。

+0

嗨,感谢您的输入,我将它指向只包含一个测试用例的特定软件包。原因是我这样做是因为我有很多测试,我首先想要使用一个测试来查看是否我可以解决错误。 – adz

+0

不要在包结构中创建新的源目录,如果需要将它们分开,然后在根目录下创建一个目录并将其放在那里。 – 11thdimension

+0

我已经试过这个,我仍然得到相同的错误 – adz