Maven多个模块冲突

时间:2012-02-09 21:55:59

标签: maven maven-2 maven-plugin maven-3 maven-release-plugin

<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的冲突。

1 个答案:

答案 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的重要时刻。