当前位置: 首页 > 知识库问答 >
问题:

有“导入”作用域的“POM”类型依赖项与没有“导入”作用域的“POM”类型依赖项有什么区别?

林修雅
2023-03-14
<type>pom</type>
<scope>import</scope>

上面的解决方案和对这个pom的简单依赖没有import作用域(我看到后者被称为“依赖项分组”)有什么区别?唯一的区别是这样的“分组”依赖项具有较低的优先级,而解决依赖项的优先级?

共有1个答案

丁曦哲
2023-03-14

两个与面向对象编程范例非常相似的概念将有助于回答这个问题:

>

  • dependencyManagement部分只声明当前项目中的依赖项及其详细信息-目的是通过继承(父级)或导入(范围)管理详细信息并在其他项目中重用。这就像在程序中声明数据类型并使其可用一样。

    dependency部分定义项目中依赖项的实际使用,可以选择继承DependencyManagement下声明的依赖项的详细信息(例如,版本等)。这就是为什么如果只将依赖项放在DependencyManagement中,就会丢失它们。这类似于在需要的程序中实例化数据类型的变量实例。

  •  类似资料:
    • 问题内容: 从Maven 2.0.9开始,有可能包含 在本节中。 据我了解,它将被“ pom”替换为包含在此pom中的依赖项,就好像它们最初是在此处定义的一样。 上面的解决方案和对此没有范围的pom的简单依赖之间有什么区别(我看到后者被称为“依赖项分组”)?这样的“分组”依赖性在解决依赖性优先级时唯一的区别是低优先级吗? 问题答案: 您只能导入 托管依赖项 。这意味着您只能 将 其他POM导入到项

    • 我在父POM中声明 此外,儿童pom使用 一切正常吗?但是当我在type = pom中使用这种依赖关系时 我有错误 如何在dependencyManagement中用type = POM $ { Jboss-javaee-7.0 . version }声明一个依赖项如果我在根中带有Jboss-javaee-7.0,那么运行

    • 当我有一个包含POM的项目时,例如: 但是我似乎弄错了,Internet上的Maven文档并没有帮助我解决这个问题。 有什么想法吗?

    • 我试图让ESB系统使用ServiceMix和ActiveMQ运行。但甚至在我深入到这一点之前,我就有一个关于POM依赖类型的问题。我得到的maven依赖关系如下: 如能提供任何指导,不胜感激。这个ServiceMix由于缺乏文档而令人沮丧。

    • 问题内容: 尝试使用带有Java 1.7的全新安装的Apache Maven 3.1.0将Java库添加到本地Maven存储库。这是添加Java存档文件的方式: 这创建了以下目录结构: 该项目的文件引用了从属项目(上面的树),如下所示: 问题 运行后,返回以下错误(在Pastebin上的完整日志): 该文档指出了可能存在的许多问题,但是似乎没有一个适用。 主意 根据文档,我尝试了以下操作: 将默认

    • 我们的结构如下: 在我们的通用api中,我们定义了protobuf消息,还定义了帮助器类和类型,并希望其他人使用它们。 当我们向客户提供common-api.jar时,他们还需要两个父pom(pom2和pom1),以便在他们自己的maven服务器上重新部署它们。 一种向他们提供POM的方法,我们可以公开我们的maven存储库,至少是所需的部分,但不幸的是,目前这不是一个选项。 有没有办法自动创建公