Java-Maven依赖关系:项目A依赖于项目B.是否意味着项目A使用Project B的jar / war文件来构建或运行其文件?

时间:2014-10-22 09:59:36

标签: java eclipse maven

我有一个项目A依赖于许多其他项目,即B,C,D,E和F,所有项目都是Maven项目。我注意到我必须为B,C,D,E和F进行Maven更新和Maven安装才能正确运行和构建A.我想知道在这个过程中发生了什么,是A使用其他项目的jar文件或编译其他项目。你能帮忙吗?我正在使用Eclipse及其Maven插件。

2 个答案:

答案 0 :(得分:1)

  

我想知道在这个过程中会发生什么,是A使用其他项目的jar文件或者编译其他项目

如果A在运行时期间需要来自其他项目的输入,那么显然需要那些jar文件。但是,当您执行A时,它不会编译其他jar文件。

  

我注意到我必须为B,C做Maven更新和Maven安装,   D,E和F用于正确运行和构建A

这样做是因为当B,C,D,E所做的更改需要来自它时,它需要知道它们的输入。否则新的改变将无效

答案 1 :(得分:1)

编译项目时,maven将首先尝试查找项目依赖项B,C,D,E。 他将查看本地存储库(通常是用户主目录下的隐藏目录.m2)或远程存储库。

在您的情况下,B,C,D,E是您的本地项目而不是第三方,因此执行B,C,D,E的maven安装将编译它们并将它们复制到本地存储库。 当您在A上进行maven安装时,它们将不会再次编译。