栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

在Maven中,模块是否受存储库的updatePolicy影响?

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

在Maven中,模块是否受存储库的updatePolicy影响?

modules
标签是一个聚合。它与的处理方式不同
dependencies
。请注意,您在
dependency
和中指定的值
module
是不同的。声明a时
dependency
,请指定maven坐标。同时
module
,您指定相对目录。

您最终将针对远程服务器的模块还是本地模块进行编译?

如果

mvn compile
在聚合器模块中运行(在子模块中不能!)
并且子模块的依赖关系是同级的依赖关系,则最终将始终针对本地模块进行编译。当您
mvncompile
在聚合器模块中时,在编译子模块时进行依赖项查找会很特殊。它看起来与同级模块的目标文件夹
。我找不到与此有关的文档,但是您可以尝试一下。

想象一下,您有这些聚合器pom

...<modules>  <module>child-a</module>  <module>child-b</module></modules>....

child-b pom声明依赖于child-a。(确保您有一个真实的输出类)

接下来,当您

mvn compile
使用聚合器pom时,即使您以前没有
mvn install
child-a ,child-
b也将能够编译。这意味着child-a甚至不在您的本地存储库中。这是可能的,因为maven将查找child-
a的类的目标文件夹。要确认这一点,您可以尝试运行
mvn compile clean
(是的,在编译后清除)。

再次注意,此行为仅在从聚合器pom运行时才适用。如果您当前的工作目录是child-b(取决于child-a),则它在尝试查找child-a时将遵守updatePolicy。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/570881.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号