Java 有没有一种方法可以为特定的maven模块项目使用不同的存储库?
我有一个maven多模块项目,结构如下。我们的项目位于GitHub公司页面 我计划公开一个maven模块项目,使其成为开源项目。但是,由于maven多模块项目结构,它需要位于文件系统中的父项目层次结构下,不是吗? 我想做的是为publicModule2创建一个单独的存储库,并将其推送到public repo。这将是一个开源项目。其余的将保持不变。在不破坏maven多模块项目结构的情况下,有没有办法做到这一点 --Maven父项目Java 有没有一种方法可以为特定的maven模块项目使用不同的存储库?,java,git,maven,Java,Git,Maven,我有一个maven多模块项目,结构如下。我们的项目位于GitHub公司页面 我计划公开一个maven模块项目,使其成为开源项目。但是,由于maven多模块项目结构,它需要位于文件系统中的父项目层次结构下,不是吗? 我想做的是为publicModule2创建一个单独的存储库,并将其推送到public repo。这将是一个开源项目。其余的将保持不变。在不破坏maven多模块项目结构的情况下,有没有办法做到这一点 --Maven父项目 --公共模块 --库索模1 --库索莫杜伦 --publicMo
- --公共模块
- --库索模1
- --库索莫杜伦
- --publicModule2
另外,你知道,当你从模块中删除它时,它们不是每次一起编译的,我不想这样。没有模块结构,我已经分离了另一个项目,但我不寻找这个项目。如果你真的想让它成为开源的话,请考虑你的回复,包括给人们一个简单、可重复的方式来构建它。如果它被要求作为一个更大的项目的一部分,而他们没有访问权,他们将无法做到这一点 你所寻找的是可能的。您需要将公共模块设置为原始父模块的子模块 根据文档,此功能将在以下情况下使用: 您希望能够将这两个项目视为单独的项目,但仍然可以 能够从一个内部使用另一个
然而我强烈主张将项目分开,这样公共项目就可以独立建设。谢谢@Michael。在我的例子中,子模块不依赖于任何其他项目。我已经能够单独构建子模块了。我刚刚浏览了Git子模块。听起来Git子模块可以解决我的问题。我不想在整体解决方案中破坏多模块结构,以查看在每次编译中最新的子模块中是否有任何破坏性的更改。因为在该项目pom中,我删除了部分,并且在编译父模块时它仍然编译所有组件。
毕竟,如果我们希望与子模块共享所有配置,请在它们的pom.xml文件中,我们必须声明父项
。我不打算从父模块到子模块共享某些内容。所以,它将是完全独立的,对吗?我是否遗漏了一个缺陷?@DavutGürbüz以这种方式构建Maven项目的主要好处是,您可以轻松地从父项目继承配置。如果您的项目是完全不同的,并且不依赖于父级,那么您实际上没有使用多模块设置的任何好处(至少对于此模块)。因此,我提出了一个问题,为什么不把它移到一个独立的项目中,并在现有的项目中添加一个依赖项呢。我刚开始从空回购中克隆,它导致了一些错误的git索引创建,但这再一次帮助了我