mvn干净安装与部署与发布
我只是在学习maven,而我们最近需要越来越多。 我想知道之间的区别
mvn clean install
mvn release
mvn deploy
请尽可能描述。
clean
, install
和deploy
阶段是有效的生命周期阶段 ,调用它们将触发它们之前的所有阶段,并且这些阶段的目标将被绑定。
mvn干净安装
该命令依次调用clean
阶段和install
阶段:
-
clean
: 删除在项目目录中生成时生成的文件 (默认为target
) -
install
: 将软件包安装到本地存储库中,作为本地其他项目的依赖项 。
mvn部署
该命令调用deploy
阶段:
-
deploy
: 将最终包复制到远程存储库,以便与其他开发人员和项目共享 。
mvn发布
这不是一个有效的阶段,也不是一个目标,所以这不会做任何事情。 但是,如果指的是用于自动发布pipe理的Maven发行插件 。 发布项目分两步完成: prepare
和perform
。 如文件所述:
准备发布要经历以下发布阶段:
- 检查源中没有未提交的更改
- 检查是否没有SNAPSHOT依赖项
- 将POM中的版本从x-SNAPSHOT更改为新版本(系统将提示您提供要使用的版本)
- 转换POM中的SCM信息以包括标签的最终目的地
- 针对修改后的POM运行项目testing以确认一切正常
- 提交修改后的POM
- 使用版本名称在SCM中标记代码(将提示input该代码)
- 将POM中的版本碰撞到新值y-SNAPSHOT(这些值也将被提示)
- 提交修改后的POM
接着:
执行发行版将运行以下发行阶段:
- 从具有可选标签的SCM URL签出
- 运行预定义的Maven目标来释放项目(默认情况下,部署站点部署)
也可以看看
- 构build生命周期介绍
- Maven发布插件
-
mvn install
会把你的打包maven项目放到本地仓库中,作为本地应用程序使用你的项目作为依赖项。 -
mvn release
基本上将你当前的代码放在你的SCM标签上,在你的项目中改变你的版本。 -
mvn deploy
会把你的打包maven项目放到一个远程仓库中,与其他开发者共享。
资源:
- Maven安装插件
- Maven发布插件
- Maven部署插件