maven的插件(命令)install介绍

maven的插件(命令)install介绍

  • 背景
  • 关于构建时使用的maven命令```install```
  • maven其他插件/命令的使用

背景

  • 今天在引入SpringCloudAlibaba时,pom.xml中的dependency报错了
    maven的插件(命令)install介绍_第1张图片
  • 到本地仓库去验证
    maven的插件(命令)install介绍_第2张图片
    maven的插件(命令)install介绍_第3张图片
  • 验证无误,找原因

现象:
在maven仓库中可以找到spring-cloud-dependencies对应的依赖;但是,找不到spring-cloud-alibaba-dependencies对应的依赖
maven的插件(命令)install介绍_第4张图片
maven的插件(命令)install介绍_第5张图片

所以,这就是原因了!spring-cloud-alibaba-dependencies在maven仓库中压根就没有,自然也就无法下载了,也就找不到对应的pom了。

  • 那么,如果获取到spring-cloud-alibaba-dependencies呢?

    参考:如何构建SpringCloudAlibaba项目

    构建完成之后,本地仓库就有了对应的依赖,项目中就不会报错了:
    maven的插件(命令)install介绍_第6张图片

关于构建时使用的maven命令install

注:install的官方称呼为 插件
maven的插件(命令)install介绍_第7张图片
maven的插件(命令)install介绍_第8张图片

  • 基本介绍
The Install Plugin is used during the install phase to add artifact(s) to the local repository. The Install Plugin
 uses the information in the POM (groupId, artifactId, version) to determine the proper location for the artifact 
 within the local repository.

install插件会根据项目中POM中的信息(groupId、artifactId、version进行定位)将项目(artifact)添加/安装到本地仓库。

The local repository is the local cache where all artifacts needed for the build are 
stored. By default, it is located within the user's home directory 
(~/.m2/repository) but the location can be configured in ~/.m2/settings.xml using 
the <localRepository> element.

本地仓库相当于就是构建项目时需要的依赖的一个本地缓存的存储的地方。默认目录是`(~/.m2/repository),但是也可以在maven的配置文件settings.xml中的元素中进行配置。

install的3个目标或者3种用法
maven的插件(命令)install介绍_第9张图片
install:install
常规用法。自动将项目安装为JAR / WAR或者EAR,以及项目的POM或者项目的其他附属源码、文档等。
···install:install-file```
外部的artifact安装到本地仓库。安装信息(groupId, artifactId, version)可以配置在pom文件中, **也可以在执行命令时写在命令行!**如下:

mvn install:install-file -Dfile=your-artifact-1.0.jar \
                         [-DpomFile=your-pom.xml] \
                         [-Dsources=src.jar] \
                         [-Djavadoc=apidocs.jar] \
                         [-DgroupId=org.some.group] \
                         [-DartifactId=your-artifact] \
                         [-Dversion=1.0] \
                         [-Dpackaging=jar] \
                         [-Dclassifier=sources] \
                         [-DgeneratePom=true] \
                         [-DcreateChecksum=true]

以上摘自:https://maven.apache.org/plugins/maven-install-plugin/

场景: 项目中需要一个3方的一个依赖,但是maven仓库又没有对应的依赖。只能从网上下载到对应的一个 .jar文件。这时,就需要通过插件(命令)install:install-file手动将这个 .jar文件安装到本地仓库,然后在项目中的pom.xml文件,将刚才添加的依赖引入进去。

install:help
帮助信息

  • 具体用法
    install:install
In most cases, install:install goal doesn't need any configuration, it needs the 
project's POM and the artifact file to be installed during the install phase of the
 default build lifecycle.

大多数情况下,install不需要任何参数,只需要项目的POM以及需要安装的artifact。切换到pom.xml所在目录,执行以下命令即可:

mvn install

示例:
如何构建SpringCloudAlibaba项目

install:install-file

The install:install-file goal is used primarily for installing artifacts to the 
local repository which were not built by Maven. The project's development team may
 or may not provide a POM for the artifact. Here's a list of some of the available 
 parameters for the install-file goal:

install:install-file命令主要用户安装有非maven构建成的artifact(工程/项目),这种artifact可能提供了pom文件也可能没有,如果没有!也没关系,在执行命令时,将相应的信息写到命令行,如下所示:

mvn install:install-file -Dfile=your-artifact-1.0.jar \
                         [-DpomFile=your-pom.xml] \
                         [-Dsources=src.jar] \
                         [-Djavadoc=apidocs.jar] \
                         [-DgroupId=org.some.group] \
                         [-DartifactId=your-artifact] \
                         [-Dversion=1.0] \
                         [-Dpackaging=jar] \
                         [-Dclassifier=sources] \
                         [-DgeneratePom=true] \
                         [-DcreateChecksum=true]

maven其他插件/命令的使用

官网!!!
https://maven.apache.org/plugins/index.html

你可能感兴趣的:(#,maven,maven,命令,install)