Answers:
您可能已经知道,Maven是Apache提供的构建自动化工具,它不仅执行依赖管理。我们可以将其作为Ant和Makefile的对等节点,以下载所需的所有依赖项。
在上mvn install
,它基于pom.xml
超级目录pom.xml
(根POM)下所有子项目的项目配置来构建依赖关系树,并.m2
在用户文件夹下的目录中下载/编译所有需要的组件。这些依赖关系将必须得到解决,才能生成没有任何错误的项目,并且mvn install
是可以下载大多数依赖关系的实用程序。
此外,Maven中还有其他类似的工具dependency:resolve
,可以在任何特定情况下单独使用。mvn的构建生命周期如下:LifeCycle绑定
process-resources
compile
process-test-resources
test-compile
test
package
install
deploy
可以通过使用flag忽略此mvn的测试阶段-DskipTests=true
。
您是否看过任何Maven文档,例如maven安装插件文档?
果壳版本:它将构建项目并将其安装在本地存储库中。
它将运行与默认生命周期的任何阶段相关的所有已配置插件的所有目标,直至“安装”阶段:
https://maven.apache.org/guides/introduction/introduction-to-the-lifecycle.html#Lifecycle_Reference
该install:install
目标是由《 Apache Maven安装插件》提供的:
Apache Maven安装插件
在安装阶段使用“安装插件”将工件添加到本地存储库。安装插件使用的信息在POM( ,
groupId
,artifactId
),version
以确定当地的仓库里的神器的适当位置。本地存储库是本地缓存,用于存储构建所需的所有工件。默认情况下,它位于用户的主目录(
~/.m2/repository
)中,但是可以~/.m2/settings.xml
使用<localRepository>
元素。
话虽如此,确切的目标目的是:
install:install
用于自动安装项目的主要工件(JAR,WAR或EAR),其POM以及特定项目产生的任何附加工件(源代码,javadoc等)。
有关目标的更多详细信息,请参阅Apache Maven安装插件-install:install页面。
有关一般构建生命周期以及目标在构建生命周期中所处位置的其他详细信息,请参阅Maven –“构建生命周期简介”页面。
简短答案
mvn安装
- 将pom中指定的所有工件(依赖项)添加到本地 存储库(从远程源)。
-DskipTests=true
是以下形式的缩写 -Dmaven.test.skip=true
在.m2文件夹中的Setting.xml中进行更改。您可以使用指向本地存储库的链接,这样就不会一次下载一次下载的jar。
<url>file://C:/Users/admin/.m2/repository</url>
</repository>
mvn install主要工作是1)下载依赖项和2)构建项目
如今,工作1由诸如intellij之类的ID负责(他们可以下载POM上的任何依赖项)
mvn install现在主要用于作业2。