Maven 3 : deploying an artifact using SCP

标签 maven scp

据我所知,使用 maven 部署第三方二进制 Artifact 是这样完成的:

mvn deploy:deploy-file -DgroupId=<group-id> \
  -DartifactId=<artifact-id> \
  -Dversion=<version> \
  -Dpackaging=<type-of-packaging> \
  -Dfile=<path-to-file> \
  -DrepositoryId=<id-to-map-on-server-section-of-settings.xml> \
  -Durl=<url-of-the-repository-to-deploy>

假设我的存储库可以使用 scp 访问,例如在上面的命令中
-Durl=scpexe://example.org//users/mvnrepo/maven

使用 maven 3,此部署命令失败并显示错误消息。

我使用的解决方法是复制两个 jar:wagon-ssh-common-2.2.jarwagon-ssh-external1.0.jar到我的 $M2_HOME/lib目录。

因此我的问题是:为什么 Maven 不能自己检索合适的货车?

(而且,如果可能的话,如何让它做到这一点?)

最佳答案

Wagons 是 Maven 的扩展。您可以按如下方式添加它们:

<project>
    <build>
        <extensions>
            <extension>
                <groupId>org.apache.maven.wagon</groupId>
                <artifactId>wagon-ssh</artifactId>
                <version>1.0</version>
            </extension>
        </extensions>
    </build>
</project>

欲了解更多详情,您可以查看 Maven Wagon页。

关于Maven 3 : deploying an artifact using SCP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11409156/

相关文章:

java - 我的 Java 应用程序中的两个类具有相同的限定名称

linux - 相当于 Chef 的SCP

java - Maven 构建失败,涉及依赖项 JAR 中的 MANIFEST.MF 类路径

java - 需要将依赖复制到指定文件夹

maven - 如何使用github中的 "Reusing Workflows"功能?

java - ECLIPSE:如何导出最小的jar文件

linux - scp linux命令的快捷命令创建

node.js - 在nodejs中使用ssh2实现scp功能

Git fetch/pull/clone 卡在接收对象上

linux - scp 来自源和目标的多个具有不同名称的文件