我正在尝试使用命令将 Maven Artifact 部署到 Artifactory 存储库中:maven deploy。
我遵循了 Maven 文档和 JFrog 的说明:
https://maven.apache.org/plugins/maven-deploy-plugin/usage.html
目前,maven deploy:deploy-file 有效。
我假设存储在 settings.xml 中的凭据和相应的存储库 ID 是正确的。
但是在运行 maven deploy 时出现错误:
[错误] 无法执行目标 org.apache.maven.plugins:maven-deploy-plugin:2.8.2:deploy (default-deploy) on project my-app: Failed to deploy artifacts: Could not transfer artifact com .mvn.deployment:my-app:jar:1.0-20190518.184733-1 从/到快照
返回代码为:401,ReasonPhrase:未经授权。 -> [帮助1]
您知道为什么部署文件会工作而部署不工作吗?
谢谢
maven 部署:部署文件工作:
mvn deploy:deploy-file -Durl=REPO_URL \
-DrepositoryId="snapshots" \
-Dfile=PATH_TO_JAR \
-DgroupId="Project" \
-DartifactId="test-project" \
-Dversion="0.0.1-SNAPSHOT"
虽然 mvn deploy 给出了一个错误:
mvn deploy
ERROR] Failed to execute goal org.apache.maven.plugins:maven-deploy-
plugin:2.8.2:deploy (default-deploy) on project my-app: Failed to deploy
artifacts: Could not transfer artifact
com.mvn.deployment:my-app:jar:1.0-20190518.184733-1 from/to snapshots
Return code is: 401, ReasonPhrase: Unauthorized. -> [Help 1]
更新:
我使用不同版本的 maven 进行了一些测试,发现问题从 3.5.0 版开始出现,mvn deploy 命令适用于 maven 3.3.9,我认为它与 3.5 版中的新版本 maven-wagon 有关。 0 他们将 Maven Wagon 从 2.10 升级到 2.12。
通过将此配置添加到我的 pom.xml mvn deploy 工作:
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-http</artifactId>
<version>2.10</version>
</extension>
最佳答案
我使用不同版本的 maven 进行了一些测试,发现问题从 3.5.0 版开始出现,mvn deploy 命令适用于 maven 3.3.9,我认为它与 3.5 版中的新版本 maven-wagon 有关。 0 他们将 Maven Wagon 从 2.10 升级到 2.12。
通过将此配置添加到我的 pom.xml mvn deploy 工作:
<build>
<plugins>
<!-- It is a good idea to also set the maven-deploy-plugin version here -->
</plugins>
<extensions>
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-http</artifactId>
<version>2.10</version>
</extension>
</extension>
</build>
谢谢 Adrien获取 maven-deploy-plugin 版本建议。
关于java - maven 部署 :deploy-file working but maven deploy not working,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56201944/