Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/385.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 有没有一种方法可以为特定的maven模块项目使用不同的存储库?_Java_Git_Maven - Fatal编程技术网

Java 有没有一种方法可以为特定的maven模块项目使用不同的存储库?

Java 有没有一种方法可以为特定的maven模块项目使用不同的存储库?,java,git,maven,Java,Git,Maven,我有一个maven多模块项目,结构如下。我们的项目位于GitHub公司页面 我计划公开一个maven模块项目,使其成为开源项目。但是,由于maven多模块项目结构,它需要位于文件系统中的父项目层次结构下,不是吗? 我想做的是为publicModule2创建一个单独的存储库,并将其推送到public repo。这将是一个开源项目。其余的将保持不变。在不破坏maven多模块项目结构的情况下,有没有办法做到这一点 --Maven父项目 --公共模块 --库索模1 --库索莫杜伦 --publicMo

我有一个maven多模块项目,结构如下。我们的项目位于GitHub公司页面

我计划公开一个maven模块项目,使其成为开源项目。但是,由于maven多模块项目结构,它需要位于文件系统中的父项目层次结构下,不是吗?

我想做的是为publicModule2创建一个单独的存储库,并将其推送到public repo。这将是一个开源项目。其余的将保持不变。在不破坏maven多模块项目结构的情况下,有没有办法做到这一点

--Maven父项目

  • --公共模块
  • --库索模1
  • --库索莫杜伦
  • --publicModule2

另外,你知道,当你从模块中删除它时,它们不是每次一起编译的,我不想这样。没有模块结构,我已经分离了另一个项目,但我不寻找这个项目。如果你真的想让它成为开源的话,请考虑你的回复

,包括给人们一个简单、可重复的方式来构建它。如果它被要求作为一个更大的项目的一部分,而他们没有访问权,他们将无法做到这一点

你所寻找的是可能的。您需要将公共模块设置为原始父模块的子模块

根据文档,此功能将在以下情况下使用:

您希望能够将这两个项目视为单独的项目,但仍然可以 能够从一个内部使用另一个


然而我强烈主张将项目分开,这样公共项目就可以独立建设。

谢谢@Michael。在我的例子中,子模块不依赖于任何其他项目。我已经能够单独构建子模块了。我刚刚浏览了Git子模块。听起来Git子模块可以解决我的问题。我不想在整体解决方案中破坏多模块结构,以查看在每次编译中最新的子模块中是否有任何破坏性的更改。因为在该项目pom中,我删除了部分,并且在编译父模块时它仍然编译所有组件。
毕竟,如果我们希望与子模块共享所有配置,请在它们的pom.xml文件中,我们必须声明父项
。我不打算从父模块到子模块共享某些内容。所以,它将是完全独立的,对吗?我是否遗漏了一个缺陷?@DavutGürbüz以这种方式构建Maven项目的主要好处是,您可以轻松地从父项目继承配置。如果您的项目是完全不同的,并且不依赖于父级,那么您实际上没有使用多模块设置的任何好处(至少对于此模块)。因此,我提出了一个问题,为什么不把它移到一个独立的项目中,并在现有的项目中添加一个依赖项呢。我刚开始从空回购中克隆,它导致了一些错误的git索引创建,但这再一次帮助了我