首页 > 解决方案 > 使用“mvn deploy”命令和 Artifactory UI 将工件部署到 Artifactory 有什么区别?

问题描述

我通常使用mvn versions:use-latest-versions命令将我的依赖项更新为其他团队已部署到我们本地地址上的免费 Jfrog 的 Artifactory 服务器的最新依赖项:http://192.168.100.243:8082/artifactory/X_Douran/. 我的问题是,当我使用 Artifactory UI 或 curl(使用 Jfrog 的 Rest Api)部署工件(jar 文件)时,该命令mvn versions:use-latest-versions无法正常工作并且不会更新我的 pom,但是当我mvn clean deploy在依赖的源代码上运行时项目然后mvn versions:use-latest-versions在我的最终项目上运行它可以正常工作并在我的 pom.xml 中更新我的依赖项。所以我想知道通过 Artifactory UI 部署和通过部署有什么不同mvn clean deploy

标签: mavenartifactoryjfrog

解决方案


  1. 您总是需要沿着 JAR 部署 POM,否则 Maven 将无法正确处理这些依赖项。此外,您需要确保元数据文件已更新。如果您使用 curl 或 UI 进行部署,我不确定 Artifactory 是否会这样做。

  2. 不建议通过 UI 定期部署您自己的 JAR。您应该在构建服务器(如 Jenkins)上构建它们,然后自动将它们部署到 Artifactory。

  3. 应该禁止“手动”更改 JAR 文件。


推荐阅读