Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.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
如何强制maven在子模块之前重建父模块_Maven_Multi Module - Fatal编程技术网

如何强制maven在子模块之前重建父模块

如何强制maven在子模块之前重建父模块,maven,multi-module,Maven,Multi Module,我正在按照推荐的路线设计一个多模块maven系统。该模式将父级与聚合器分离 除了一件事,这一切都很有效。在开发父模块时,我发现如果父模块发生更改,我必须在构建聚合之前首先重建它。否则,它将从存储库中提取父版本,而存储库将始终落后一个版本 有没有一种简单的方法可以强制重建母公司而不依赖回购协议?这似乎会像引导构建一样反复出现 更新:有人要求提供目录布局。或许这将有助于: $ find . -name pom.xml ./pom.xml ./myappp008-cs/pom.xml ./myappp

我正在按照推荐的路线设计一个多模块maven系统。该模式将父级与聚合器分离

除了一件事,这一切都很有效。在开发父模块时,我发现如果父模块发生更改,我必须在构建聚合之前首先重建它。否则,它将从存储库中提取父版本,而存储库将始终落后一个版本

有没有一种简单的方法可以强制重建母公司而不依赖回购协议?这似乎会像引导构建一样反复出现

更新:有人要求提供目录布局。或许这将有助于:

$ find . -name pom.xml
./pom.xml
./myappp008-cs/pom.xml
./myappp008-ds/pom.xml
./myappp008-gr/pom.xml
./myappp008-as/pom.xml
./myappp008-parent/pom.xml
顶级pom是聚合器,myapp008父pom是父pom


另外,我包含的两个链接都显示了与我类似的目录布局。

Duh,只是将父级作为聚合器处理案例的第一个模块。以前,我根本没有将父模块作为模块之一。

Duh,只是将父模块作为聚合器中处理该案例的第一个模块。以前,我根本没有把家长作为模块之一。

简短的回答是否定的(我希望我没有错过理解这个问题的机会)。如果您正在构建一个多模块项目,您将主要从顶层开始构建(除非您知道只构建一个子项目是安全的)。如果您添加项目布局的图像/ascii艺术,可能会增加一些清晰度。希望这一澄清能有所帮助。为什么您要将家长放入兄弟文件夹而不是项目的根目录?我提到的两个链接都解释了原因。将聚合函数与继承函数分离有好处,maven文档建议这样做。它使所有的POM变得更简单。但是对于这个缺陷,你有在线的项目吗?在多模块构建中,父级包含模块引用,通常还包含整个项目的从属管理……如果您在聚合器中定义了
,这意味着父级将从存储库中解决,而不是从
myappp008父级中解决,这意味着您的多模块构建不是真正的多模块构建模块构建…这意味着您违反了关注点分离…除此之外,您使用的是Maven 3.X吗?你提供的那些参考资料非常陈旧……同时也有部分错误……简短的回答是否定的(我希望我没有错过理解这个问题的机会)。如果您正在构建一个多模块项目,您将主要从顶层开始构建(除非您知道只构建一个子项目是安全的)。如果您添加项目布局的图像/ascii艺术,可能会增加一些清晰度。希望这一澄清能有所帮助。为什么您要将家长放入兄弟文件夹而不是项目的根目录?我提到的两个链接都解释了原因。将聚合函数与继承函数分离有好处,maven文档建议这样做。它使所有的POM变得更简单。但是对于这个缺陷,你有在线的项目吗?在多模块构建中,父级包含模块引用,通常还包含整个项目的从属管理……如果您在聚合器中定义了
,这意味着父级将从存储库中解决,而不是从
myappp008父级中解决,这意味着您的多模块构建不是真正的多模块构建模块构建…这意味着您违反了关注点分离…除此之外,您使用的是Maven 3.X吗?您提供的这些参考非常陈旧…同时也有部分错误…如何“使父模块成为聚合器中的第一个模块”?如何使父模块成为聚合器中的第一个模块?如何“使父模块成为聚合器中的第一个模块”?如何使父模块成为聚合器中的第一个模块?