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