Maven测试包范围

时间:2015-12-17 02:46:46

标签: java maven

简介: 虽然标题看起来与其他stackoverflow问题重复,但我已经阅读了它而不是类似的问题。

背景 我在package x.y.z下创建了一个src/main/java的maven项目,里面有很多类,比如A-Z类。只有A类被定义为public class。我创建了另一个package a.b.c,唯一可以访问的类是class A按预期方式。

问题:但是为什么在src / test / java下的测试类能够访问package x.y.z内的所有java类,甚至是定义为非公共访问修饰符的类?我将如何使测试类无法访问?

谢谢!

1 个答案:

答案 0 :(得分:1)

您的测试类位于同一个包中,即x.y.z。这就是他们可以直接访问的原因。只是,目录结构对于测试类而不是基础包是不同的,它们是它们的一部分。

检查测试类包声明必须是package x.y.z

当我们编写测试用例时,您总是使用代码类所属的包。