我有一个具有以下结构的Java Web应用程序(GLF)
GLFBuilder (multimodule)
- GLFCoreBuilder (multimodule)
- GLFCore (depends on other core/library projects)
- GLFDataModel
- GLFWebBuilder (multimodule)
- GLFFrontEnd
- GLFFrontEndWeb
- GLFIntegration (to create app war)
以上列出的所有子模块项目目前共享同一父级(例如GLFFrontEnd
是GLFWebBuilder
的子级,GLFCore
是GLFBuilder
的子级...)能够共享通用的配置/依赖关系。
我还配置了dependencyManagement
来包含所有已定义适当属性的子模块,这样我就不必在子模块相互依存关系中的任何地方指定version
。
我应该提到,目前所有模块(多模块和子模块)都共享相同的SNAPSHOT版本,(叹气)我公司仍使用SNAPSHOT版本发布了该应用程序,以避免处理版本号,但是在所有这些问题当中带来的好处还大大增加了我们CI环境中的构建时间。
我希望能够独立发布一个模块的稳定版本(无SNAPSHOT)。
考虑到我可以更改GLFFrontEnd
中与我的核心库无关的任何内容,这听起来很合逻辑。
我知道,当存在亲子关系时,如果不释放父项,那么子项就不能稳定发布(没有快照)。
maven版本插件是否适合这种情况?
谢谢