<module>APP_1</module>
<module>web_1</module>
<module>service_1</module>
<module>schema_1</module>
<module>APP_2</module>
<module>web_2</module>
<module>service_2</module>
<<module>schema_2</module>
我有这样的项目结构,但在某些项目中,如果我想构建service_1,我需要service_2,而对于构建service_2,我需要service_1,反之亦然。
那么我应该如何解决与maven的冲突。
答案 0 :(得分:1)
您无法使用Maven或任何其他构建工具解决此冲突。它不是构建工具问题,它是一个架构缺陷,只能通过refactoring解决。
立即想到两个选项:
1)创建一个名为&#34; service_common&#34;的新模块。其中包含service_1需要和service_2需要的东西。 make service_common是这两个模块的依赖关系。
2)将service_1需要的东西从service_2移动到service_1。然后service_1取决于什么,service_2依赖于service_1。
有很多方法可以解决这个问题,但无论语言或构建工具如何,循环模块间依赖都是NO-NO的重要时刻。