1

有没有办法(内置或通过插件)限制从 Eclipse 中的其他包访问 Java 包?

例子:

包(在同一个项目中):

com.my.project.common

com.my.project.serviceV1

com.my.project.serviceV2

现在我想限制common 访问 serviceV1 和 serviceV2。但是当然应该允许这些服务访问公共包

4

1 回答 1

1

编辑:如果您正在寻找的只是可以使用 private/protected/public/default 包范围实现的简单包级别保护,那么我同意@AlexisPigeon 的评论 - 这是最简单的路线。否则,我会考虑我在下面提出的 jdepend 解决方案。

不,这是不可能的。我建议查看JDepend。它可以生成包依赖关系的报告。如果您的依赖约束之一被违反,您可以编写一个脚本来解析输出,然后使您的构建失败(有用于 maven、ant 和 gradle 的 jdepend 插件)。

于 2012-10-29T16:49:04.917 回答