如何创建 Checkstyle 规则来限制不同根包之间的交互?
我有以下 3 个根包:
models
views
controllers
(它们不是类似的东西com.mycompany.myproject.models
。它们是根包。)
我想禁止访问models
toviews
和 from views
to models
(以及其他一些)。
我尝试使用 Checkstyle 的ImportControl-Checker:
- 尝试 1:使用一个
import-control.xml
. 问题:我只能提供一个 Root-XML-Element (<import-control pkg="models">
) 并且它只包含一个包(但我想拥有多个包)。 尝试 2:使用多个
import-control.xml
. 问题:如果我在 中导入多个checkstyle-config.xml
,似乎都不起作用(没有错误,看起来我都没有定义)。我的定义import-control.xml
:<module name="ImportControl"> <property name="id" value="ImportControlViews"/> <property name="file" value="${basedir}/project/import-control/views.xml"/> </module> <module name="ImportControl"> <property name="id" value="ImportControlModels"/> <property name="file" value="${basedir}/project/import-control/models.xml"/> </module>