我的团队使用了使用Apache从开发服务器共享的内部团队Maven存储库。我们还在同一台计算机上运行Continuum CI服务器。Maven在Continuum中的构建具有"安装"目标,该目标将最终工件直接复制到共享目录中。

问题是,使用使用文件将文件添加到共享存储库之间有什么区别mvn install并使用部署目标(MVN-Deploy插件)?

在我看来使用mvn deploy创建其他配置麻烦,但是我已经阅读了某个地方,因为由于某些原因,将文件安装到共享仓库中是一个坏主意。

更新:我得到了功能差异deployinstall;实际上,我对Maven Repo中创建的文件的低级别细节更感兴趣。

答案

肯,好问题。我应该在权威指南关于差异。

例子:

  1. 当我在我的计算机上运行一个大型多模块项目时,我通常会运行" MVN安装"。这将在我的本地存储库中安装所有生成的二进制软件工件(通常是罐子)。然后,当我在构建中构建单个模块时,Maven将从本地存储库中检索依赖项。

  2. 当需要部署快照或发行版时,我将运行" MVN部署"。运行此操作将尝试将文件部署到远程存储库或服务器。通常我将部署到存储库管理器,例如关系

的确,运行"部署"将需要一些额外的配置,您将不得不在POM中提供分销管理部分。

来自: stackoverflow.com