Checkstyle检查某个类是否仅在某个包或子包内使用

时间:2017-02-10 11:20:23

标签: java checkstyle

我们有一个实用程序类:JsonRequestBuilder

我只希望这个类用在" datamanager"包(或子包),而不是ui代码等。

所以JsonRequestBuilder可以在像

这样的包中使用
be.knarf.datamanager
be.knarf.datamanager.special it is also ok

但不是像

这样的包裹
be.knarf.screens

任何人都知道如何做到这一点?这可以通过其中一个正则表达式检查来完成吗?

2 个答案:

答案 0 :(得分:1)

很抱歉没有回答checkstyle,但是你不能将JsonRequestBuilder放在be.knarf.datamanager包中并从类中删除public修饰符,这样它应该是包私有的。< / p>

答案 1 :(得分:1)

使用Checkstyle,通常使用ImportControl检查来实现。它基本上允许您指定允许哪些导入在哪些包中,并在您的代码库中检查它。

有一点需要注意的是,它不会在代码中找到对类的完全限定引用,它只检查导入。但这仍然非常有用。