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 pom.xml时会发生什么_Maven_Dependencies_Pom.xml - Fatal编程技术网

当将另一个项目作为依赖项放入maven pom.xml时会发生什么

当将另一个项目作为依赖项放入maven pom.xml时会发生什么,maven,dependencies,pom.xml,Maven,Dependencies,Pom.xml,我是马文的新手。我在网上搜索过,知道如何将一个项目(命名为A)作为另一个项目(命名为X)的依赖项。这是通过在X的pom.xml文件中添加依赖项块来实现的 我的问题是,幕后到底发生了什么?根据我有限的知识,我知道通常通过在pom.xml中添加依赖项,它会自动为maven项目安装一个jar。 我还知道,在这种情况下,A的所有依赖项都将由X继承 我猜A也会作为jar安装到X中?依赖项是库还是我自己的远程或本地项目之间有什么区别吗?不太清楚您的意思,但我会试一试 正在进行的是依赖项(A,在您的情况下)及

我是马文的新手。我在网上搜索过,知道如何将一个项目(命名为A)作为另一个项目(命名为X)的依赖项。这是通过在X的pom.xml文件中添加依赖项块来实现的

我的问题是,幕后到底发生了什么?根据我有限的知识,我知道通常通过在pom.xml中添加依赖项,它会自动为maven项目安装一个jar。 我还知道,在这种情况下,A的所有依赖项都将由X继承


我猜A也会作为jar安装到X中?依赖项是库还是我自己的远程或本地项目之间有什么区别吗?

不太清楚您的意思,但我会试一试

正在进行的是依赖项(
A
,在您的情况下)及其可传递的依赖项将自动下载并安装到本地存储库中。除非您告诉它,否则它不会为project
X
做任何事情。它肯定不会对project
A
做任何事情,除了安装它,它完全不知道project
X
正在使用它

如果希望Maven在本地存储库中安装project
X
,则需要
安装
它,其依赖项将在过程中隐式安装。Maven不会在另一个工件中安装工件(不确定您的意思)


换一种说法:只有人工制品。这些工件具有坐标(
groupId
artifactId
version
),可以在本地存储库或远程定位它们。Maven负责为您解决这些工件(以及它们的依赖关系)。

这就是我的基本要求。实际上在我的描述中,A实际上是X的依赖项。但我明白你的意思。啊,好的。很抱歉给你带来了困惑。我将很快编辑我的答案,以更好地反映您的问题。不过,如果您修改您的答案,让A成为依赖项,这将非常有用。