gpt4 book ai didi

java - 多模块maven项目的循环依赖

转载 作者:行者123 更新时间:2023-12-02 09:49:23 25 4
gpt4 key购买 nike

过去几周我一直在用 Java 编写一个非常简单的区 block 链,作为 Intellij 的 Maven 项目。当我开始这个项目时,我对驻留在单个模块中的所有内容都满意,尽管技术上需要构建两个工件才能使项目正常工作(用于应用程序/控制逻辑的可执行 .jar 和用于应用程序/控制逻辑的 .war所有通过 tomcat 容器部署的 p2p 内容)。我使用单独的配置文件来构建 .jar 和 .war,并手动执行/部署它们。

然而,我已经厌倦了这一点,并相信将其分成一个多模块项目(.war、.jar 和 .ear?也许......)是实现我的目标的唯一方法使用单个命令一次性构建和执行/部署所有内容。我已经开始这样做,但对两个子模块之间的循环依赖关系感到困惑。我有依赖于网络端的应用程序端代码,以及依赖于应用程序端的网络端代码。如何通过创建另一个模块和另一个 pom.xml 来解决这个问题?任何建议将不胜感激!请耐心等待,因为我仍然是 java/maven 的新手,这是我第一次真正破解任何复杂程度的应用程序。

最佳答案

当您的子模块 c1 和 c2 相互依赖(即一个类或包)时,那么公共(public)包应该位于单独的模块 c3 中。在 c1 和 c2 项目中添加 c3 作为依赖项。

您不能将 c1 添加为 c2 中的依赖项,也不能将 c2 添加为 c1 中的依赖项。因为当maven尝试分析你的代码时,由于这种循环依赖,它无法找到首先构建哪个模块。

关于java - 多模块maven项目的循环依赖,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56419941/

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