我刚开始使用Maven,并被告知在特定目录中进行mvn安装。
mvn安装到底做什么?
我认为它会在当前文件夹中查找pom.xml,并开始按照该文件中指定的指示执行。对吗?
我刚开始使用Maven,并被告知在特定目录中进行mvn安装。
mvn安装到底做什么?
我认为它会在当前文件夹中查找pom.xml,并开始按照该文件中指定的指示执行。对吗?
当前回答
-DskipTests=true是- ddmen .test.skip=true的简写形式
在。m2文件夹中的settings .xml中进行更改。你可以使用链接到本地回购,这样罐子一旦下载不应该下载一遍又一遍。
<url>file://C:/Users/admin/.m2/repository</url>
</repository>
其他回答
简短的回答
mvn install 将pom中指定的所有工件(依赖项)添加到本地存储库(从远程源)。
您可能已经知道,Maven是Apache提供的构建自动化工具,它的功能不仅仅是依赖项管理。我们可以让它成为Ant和Makefile的对等体,后者可以下载所需的所有依赖项。
在mvn安装中,它根据超级POM .xml(根POM)下所有子项目上的项目配置POM .xml构建依赖树,并在用户文件夹下名为.m2的目录中下载/编译所有所需的组件。这些依赖关系必须得到解决,才能正确地构建项目,mvn install是一个可以下载大部分依赖关系的实用程序。
此外,Maven中还有其他utils,如dependency:resolve,可以在任何特定情况下单独使用。mvn的构建生命周期如下:生命周期绑定
进程资源 编译 process-test-resources 任意 测验 包 安装 部署
这个mvn的测试阶段可以通过使用-DskipTests=true来忽略。
重要的是要指出安装和安装:安装是不同的东西,安装是一个阶段,在这个阶段,maven做的不仅仅是将当前项目模块工件安装到本地存储库,它首先检查远程存储库。另一方面,install:install是一个目标,它只是构建你当前的项目,并将所有的构件安装到本地存储库(例如到.m2目录)。
一般来说,我们应该使用mvn软件包而不是mvn安装,我在任何地方都看到这个错误
Mvn安装将生成的jar从目标复制到.m2存储库,这可能会在未来给开发人员带来一些问题
根据我7年多的经验,我建议开发人员使用mvn包而不是mvn安装
MVN安装的主要任务是
1)下载依赖项
2)构建项目
而job 1现在由intellij这样的id负责(他们在POM下载任何依赖项)
MVN安装现在主要用于作业2。