微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

有没有办法将多模块 Maven 项目拆分到不同的 Git 存储库中?

如何解决有没有办法将多模块 Maven 项目拆分到不同的 Git 存储库中?

我目前正在开发两种产品。其中之一是我想免费向公众提供的开源库。然而,另一种产品是付费的和闭源的,但使用该库作为依赖项。这两个项目在同一个 Maven 项目中,(但只是父项目的不同子模块)。目前,我有一个包含两者的 Git 存储库,但我想分别容纳库和付费产品,同时仍然保留它们是同一个 maven 项目的一部分。有什么好的方法可以实现这一目标吗? (我知道我可以使用单独的 Maven 项目创建另一个单独的 Git 存储库,但是,我想允许它,这样我就可以在使用 mvn package 时构建两个项目并非常有效地在两边编写代码)。>

解决方法

你说:

我知道我可以使用单独的 Maven 项目创建另一个单独的 Git 存储库

而且,正如@khmarbaise in a comment 所建议的那样,最简单的方法是将开源组件分离到自己的存储库中,并像使用任何其他依赖项一样使用它。

我想允许它,这样我就可以在使用 mvn package 时构建两个项目

如果这是一个优先事项,您可以继续将单独的项目视为闭源项目的 Maven 模块。使用 <module>../clone-directory-for-open-source-module</module>add it as a Git submodule 之类的内容引用结帐。

您需要确保该模块独立构建,以及在组合项目中构建,并且您的发布过程可能会更复杂。

非常高效的两边写代码

紧密耦合开发的一个风险是,您将在开源组件中做出孤立无意义的更改。这可能是也可能不是问题,具体取决于第三方对该库的贡献程度。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。