Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/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_Version Control_Versioning_Nexus - Fatal编程技术网

如何让maven找到第一个';最新版本';存储库列表中的版本?

如何让maven找到第一个';最新版本';存储库列表中的版本?,maven,version-control,versioning,nexus,Maven,Version Control,Versioning,Nexus,我有一个maven父pom,它指定了一长串存储库。 在子POM中,我们使用版本范围来请求最新版本 有时项目落后于主干,因此maven开始解析绝对最新版本,而不是特定分支存储库中的最新版本 我如何告诉maven按优先顺序查找最新版本? 所以 检查本地m2。。空的。 好的,检查我们的分行回购:是,见1.2.1 停止不检查public并发现1.2.2中有更高版本禁止使用版本范围,因为这会导致生成不可复制的版本。此外,不要在POM文件中定义存储库,因为它们属于settings.xml或更好的设置。我同意

我有一个maven父pom,它指定了一长串存储库。 在子POM中,我们使用版本范围来请求最新版本

有时项目落后于主干,因此maven开始解析绝对最新版本,而不是特定分支存储库中的最新版本

我如何告诉maven按优先顺序查找最新版本? 所以 检查本地m2。。空的。 好的,检查我们的分行回购:是,见1.2.1
停止不检查public并发现1.2.2中有更高版本

禁止使用版本范围,因为这会导致生成不可复制的版本。此外,不要在POM文件中定义存储库,因为它们属于settings.xml或更好的设置。我同意。。然而,这并不是我们可以轻易改变的。。我要找的是一个解决办法。。某种maven配置,当它在存储库列表中找到第一个匹配的工件时告诉它停止。不,没有这种配置……您的构建必须是干净的和可复制的。你所说的是完全防止这种情况发生,Maven不会让你逍遥法外。坦白地说,我很高兴这样做:你想做的事会导致未来的痛苦世界。我想我已经找到了一个可以接受的答案。可以覆盖RepositoryManagementMojo,但显然正确的做法是使用Nexus等工具为您有效地管理解决方案(因为它比Maven灵活得多)。将主干存储库和分支存储库添加到同一存储库组,然后在二进制存储库中配置解析。这意味着您的maven pom中也只有一份回购协议。