altDeploymentRepository 和 altReleaseDeploymentRepository 之间的区别

2022-09-03 13:01:50

我使用 swagger 在我的项目中生成 Web 服务客户端。生成的代码生成一个可用作 Maven 库的库。我已经成功地将发布版本部署到我的私有 sonatype-nexus 中。

我想知道 和 之间有什么区别?如果设置了两个参数,如何选择要使用的存储库?altDeploymentRepositoryaltReleaseDeploymentRepositorymvn deploy

正如 apache-maven deploy 文档所说:

altDeploymentRepository:指定应将项目工件部署到的备用存储库(中指定的存储库除外)。格式: id::layout::url

altReleaseDeploymentRepository:当项目具有最终版本时要使用的替代存储库。

altSnapshotDeploymentRepository:当项目具有快照版本时要使用的替代存储库。

到底是做什么的

当项目具有最终版本时。

意味 着?


答案 1

当指定 altReleaseDeploymentRepository 时,当项目具有发布(或“最终”)版本(即不是快照版本)时,将始终使用它。当指定 altSnapshotDeploymentRepository 时,当项目具有快照版本时,将始终使用它。altDeployment存储库是默认的备用部署存储库,当未指定或使用上述存储库时。

换句话说,如果你有一个发布版本,那么:

  • altReleaseDeploymentRepository如果指定,将使用;
  • 否则,如果指定,将使用;altDeploymentRepository
  • 否则,如果指定,将使用在<分发管理><存储库> POM 元素中声明的发布远程存储库;
  • 否则插件将出错,因为它没有找到任何要部署到的远程存储库。

同样,如果您有快照版本,则:

  • altSnapshotDeploymentRepository如果指定,将使用;
  • 否则,如果指定,将使用;altDeploymentRepository
  • 否则,如果指定,将使用在<分发管理><快照存储库> POM 元素中声明的快照远程存储库;
  • 否则,如果指定,将使用在<分发管理><存储库> POM 元素中声明的发布远程存储库;
  • 否则插件将出错,因为它没有找到任何要部署到的远程存储库。

答案 2

推荐