gpt4 book ai didi

java - 模块中的包可见性

转载 作者:行者123 更新时间:2023-12-01 14:25:52 24 4
gpt4 key购买 nike

我有这样的情况:包1:com.foo.xxxx,具有框架的基本功能,以及包 2. com.bar.xxxx 以及使用框架功能的类。

我在同一个项目中拥有这两个包(我使用 IntelliJ)。

开发人员不应在 com.foo.xxx 包中引用 com.bar.xxx 包中的任何类(因为 foo 是框架字,您应该使用 bar 中的框架)。但当然,现在这种情况已经发生了。该项目将在 Intellij 中正常编译,但部署 Framework.jar 时,存在 Unresolved 运行时依赖关系。

有没有任何框架或方法可以在编译时解决这个问题?有人有这方面的经验吗?我可以为此使用 APT 吗?

我可以想象像 com.foo.xxx 的标志或注释之类的东西,如果在 com.foo 下的任何类中使用 com.bar.xxx 中的类,则会在编译时抛出错误。

有什么想法吗?

谢谢。

Z。

最佳答案

我建议您定义 2 个单独的项目。 AFAIK IDE(不过我不知道 IntelliJ)应该可以防止项目的循环依赖。或者甚至更好:使用 Maven 等构建工具来管理您的依赖项。

如果您不想或可以将代码分散到 2 个项目中,可以使用 JDepend 等工具来检测包依赖循环。

关于java - 模块中的包可见性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17185562/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com