【Java javac】使用javac命令编译两个不同包目录下的相关java文件

Calculator.java文件

package junit;

public class Calculator {
    
    
    public int add(int a, int b) {
    
    
        return a - b;
    }

    public int sub(int a, int b) {
    
    
        return a - b;
    }

}

CalculatorTest.java文件

package test;

import junit.Calculator;
import org.junit.Assert;
import org.junit.Test;

public class CalculatorTest {
    
    
    @Test
    public void testAdd(){
    
    
        System.out.println("执行testAdd方法");
        //创建对象
        Calculator c = new Calculator();
        //调用方法
        int result = c.add(1, 2);
        //System.out.println(result);
        Assert.assertEquals(3,result);
    }
}

这两个文件位于两个不同的包下,将两个文件拿出,进行编译
如果进行单独编译:
在这里插入图片描述
第一个文件可以正常编译,但是第二个文件报错,找不到之前编译的那个类
在这里插入图片描述
一起编译,可以输出两个class文件,但并不能输出包目录
在这里插入图片描述
修改一下命令:
javac -d classes Calculator.java CalculatorTest.java
在这里插入图片描述
classes文件夹是自己新建的,指定输出到这个目录中,此时编译出的文件带包名目录
在这里插入图片描述
如果你的环境变量中没有junit这个jar包
javac -cp junit-4.13.2.jar -d classes Calculator.java CalculatorTest.java
需要在这个目录下添加junit的jar包并在命令中指定classpath

猜你喜欢

转载自blog.csdn.net/weixin_44121966/article/details/119702345