我有如下的目录结构:testant
   -src
     -my
       -example
          -ant
             Calculator.java
   -test
     -my
       -example
          -ant
            TestCalculator.java其中Calculator.java的代码如下:
package my.example.ant;
public class Calculator
{
    public double add(double number1,double number2)
    {
        return number1+number2;
    }
    public double sub(double number1,double number2)
    {
        return number1-number2;
    }
    public double mul(double number1,double number2)
    {
        return number1*number2;
    }
}
TestCalculator.java中代码如下:
package my.example.ant.Calculator;
import static org.junit.Assert.*;
import org.junit.*;
public class TestCalculator{
@Test
public void testAdd(){
Calculator calc=new Calculator();
double result=calc.add(10,20);
assertEquals(30.0,result,0);
}
}
我无法编译TestCalculator,总是提示我Calculator这个标识符找不到,请教各位,这是怎么回事?
这个源代码和测试代码分开在不同的目录,但是包路径相同,为什么总是编译不过呢?
    

解决方案 »

  1.   

    这个肯定找不到啊  包写错了//TestCalculator.java中代码如下: 
    package my.example.ant.Calculator; 
    import static org.junit.Assert.*; 
    import org.junit.*; 
    public class TestCalculator{ 
    @Test 
    public void testAdd(){ 
    Calculator calc=new Calculator(); 
    double result=calc.add(10,20); 
    assertEquals(30.0,result,0); 

    } 改成package my.example.ant; 
    import static org.junit.Assert.*; 
    import org.junit.*; 
    public class TestCalculator{ 
    @Test 
    public void testAdd(){ 
    Calculator calc=new Calculator(); 
    double result=calc.add(10,20); 
    assertEquals(30.0,result,0); 


      

  2.   

    楼上,对不起,是我开始把TestCalculator的代码贴错了,我的确是按照你的写法,TestCalculator.java就是按照你那样的写法,但是给出的提示就是说Calculator找不到。我的代码如下:
    Calculator.java的代码如下: 
    package my.example.ant; 
    public class Calculator 

        public double add(double number1,double number2) 
        { 
            return number1+number2; 
        } 
        public double sub(double number1,double number2) 
        { 
            return number1-number2; 
        } 
        public double mul(double number1,double number2) 
        { 
            return number1*number2; 
        } 

    TestCalculator.java中代码如下: 
    package my.example.ant; 
    import static org.junit.Assert.*; 
    import org.junit.*; 
    public class TestCalculator{ 
    @Test 
    public void testAdd(){ 
    Calculator calc=new Calculator(); 
    double result=calc.add(10,20); 
    assertEquals(30.0,result,0); 


      

  3.   

    那你看下 bin/my/example/ant(或者其他你自己ant compile出来的路径) 下面有没有  Calculator.class 和 TestCalculator.class ????