这是 wagon-ssh 2.10 的错误吗?
什么可能有效?
例如,Maven、Wagon-SSH 和 pom 设置的哪种组合可以恢复 Maven 3.0.5 和 wagon-ssh 2.4 的行为?
在我的 pom.xml 中升级到 wagon-ssh 2.10 以检查这是否会根据https://issues.apache.org/jira/browse/MDEPLOY-177解决我的问题后, 另请参阅如何修复或解决 wagon 错误?
我收到以下错误消息:
No connector available to access repository XXX-snapshot-repository
(scp://XXX/srv/repo/snapshots/) of type default
using the available factories WagonRepositoryConnectorFactory
调查没有可用的连接器使用 eclipse aether 包通过 maven 插件进行部署
我假设这可能是一个 Maven 版本问题。事实上,自从wagon-ssh因 scp 传输而中断数月以来,我一直坚持使用较旧的 3.0.5 maven
mvn --version
Apache Maven 3.0.5 (r01de14724cdef164cd33c7c8c2fe155faf9602da; 2013-02-19 14:51:28+0100)
所以我升级到 Maven 3.3.3
mvn --version
Apache Maven 3.3.3 (7994120775791599e205a5524ec3e0dfe41d4a06; 2015-04-22T13:57:37+02:00)
稍微修改了错误消息:
Cannot access scp://XXX/srv/repo/snapshots/ with type default using the available connector factories: BasicRepositoryConnectorFactory
似乎有不同类型的 ConnectorFactories
- WagonRepositoryConnectorFactory (Maven 3.0.5)
- BasicRepositoryConnectorFactory (Maven 3.3.3)
- AetherRepositoryConnectorFactory(Maven?)
查看https://stackoverflow.com/a/18253897/1497139 有一个指向http://maven.apache.org/guides/mini/guide-using-extensions.html的指针,它应该解释如何添加连接器(6 人赞成这个答案) - 但我在那里没有提到 ConnectorFactory。
互联网搜索
wagon-ssh ConnectorFactory scp
有这个问题中已经提到的一些链接,并且:
有没有办法让 maven scp wagon 在 linux/mac/windows 平台上始终如一地工作?
其中提到了我已经成功使用了 2 年的配置风格。
我观察到,当我单独在父 pom.xml 上进行 maven 安装时,发生了以下下载:
mvn install
[INFO] Scanning for projects...
Downloading: http://uk.maven.org/maven2/org/apache/maven/wagon/wagon-provider-api/2.10/wagon-provider-api-2.10.jar
Downloaded: http://uk.maven.org/maven2/org/apache/maven/wagon/wagon-provider-api/2.10/wagon-provider-api-2.10.jar (53 KB at 129.4 KB/sec)
但这不会改变子项目的情况。
这是 pom 的摘录:
<extensions>
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-ssh</artifactId>
<version>2.10</version>
</extension>
</extensions>
<distributionManagement>
<snapshotRepository>
<id>XXX-snapshot-repository</id>
<name>XXX Maven2 Snapshot Repository</name>
<url>scp://XXX/srv/repo/snapshots/</url>
</snapshotRepository>
</distributionManagement>