提供:多模块Maven项目
任务:每次发布后更新版本
我看到两种不同的策略:
策略1 -整个更新:所有模块的更新版本,尽管事实上是否有更新
策略2 -极简式更新:只更新实际受影响的模块的版本
假设我们有以下项目结构:
root
---dao
---domain
---web
---site1
---site2
---processors
---processor1
---processor1Service
---processor1Util
---processor1Tests
---processor2
---processor2Service
---processor2Util
---processor2Tests
---simulators
---simulator1
---simulator1Service
---simulator1Util
---simulator1Tests
---simulator2
---simulator2Service
---simulator2Util
---simulator2Tests
---etc所有父pom都有包装类型- pom。所有的最终模块都有资源生成类型- jar、war、sar等。根pom包含dependencyManagement部分,其中列出了所有子模块。
战略1:
战略2:
策略1:
利益
缺点:
策略2:
福利:
缺点:
请分享你的意见。这个问题是如何在像handled框架这样的大型项目中处理的
发布于 2015-02-08 07:06:16
就我个人而言,我绝对支持你的战略1。这是我工作的公司所采用的战略。您提到的不需要升级的HDD空间或升级模块版本的副作用与“版本动物园”相比是次要问题。
只有我会投票给您的策略2号,如果您使用的是OSGI架构,这需要非常精确的模块版本策略,如果您立即升级所有版本,它将破坏OSGI (只需要更新的模块/子模块热部署)的巨大好处。
我还建议您看看http://java.dzone.com/articles/why-i-never-use-maven-release,它给出了如何在多模块maven项目中升级版本以及如何在任何CVS中进行跟踪的很好的提示。
https://stackoverflow.com/questions/28391415
复制相似问题