我是Maven的新手。我在线搜索并知道如何将一个项目(将其命名为A)作为另一个项目的依赖项(将其命名为X)。这是通过在X的pom.xml文件中添加依赖块来完成的。
我的问题是,这背后的幕后真的发生了什么?根据我有限的知识,我通常通过在pom.xml中放置一个依赖项,它会自动为maven项目安装一个jar。 我也知道在这种情况下,A的所有依赖关系都将由X继承。
我猜A还会作为一个罐装入X吗?依赖项是库还是我自己的远程或本地项目之间的区别是什么?
答案 0 :(得分:0)
不完全确定你的意思,但我会试一试。
正在发生的是依赖项(在您的情况下为A
),其传递依赖项将自动下载并安装在本地存储库中。除非你告诉它,否则它不会为项目X
做任何事情。除了安装项目A
之外,它肯定会不做任何事情,它完全没有意识到项目X
正在使用它。
如果您希望Maven在本地存储库中安装项目X
,则需要install
它及其依赖项将隐式安装在该过程中。 Maven不会在中安装其他工件(不确定你的意思)。
以另一种方式表达:只有工件。这些工件具有坐标(groupId
,artifactId
和version
),以便能够在本地存储库中或远程定位它们。 Maven负责为您解决这些工件(及其依赖项)。