wagon ssh / scp: нет доступного соединителя для доступа к хранилищу... типа по умолчанию с использованием доступных фабрик WagonRepositoryConnectorFactory

Это ошибка wagon-ssh 2.10?

Что может сработать?

Например, какая комбинация параметров Maven, Wagon-SSH и pom вернет поведение, которое было в Maven 3.0.5 и wagon-ssh 2.4?

После обновления до wagon-ssh 2.10 в моем pom.xml, чтобы проверить, исправит ли это мои проблемы в соответствии с 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. На самом деле, я некоторое время придерживался более старой версии Maven 3.0.5, так как wagon-ssh был сломан для передачи scp в течение многих месяцев.

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

Изучение не удалось развернуть проект Maven, соединитель недоступен

Кажется, есть разные типы ConnectorFactories

  1. WagonRepositoryConnectorFactory (Maven 3.0.5)
  2. BasicRepositoryConnectorFactory (Maven 3.3.3)
  3. AetherRepositoryConnectorFactory (Maven?)

Заглядывая в /questions/14800850/razem-dlya-razvertyivaniya-maven/14800855#14800855 есть указатель на http://maven.apache.org/guides/mini/guide-using-extensions.html который должен объяснить, как добавлять соединители. (6 человек проголосовали за этот ответ) - но я не нахожу упоминания о ConnectorFactory там.

поиск в интернете для

wagon-ssh ConnectorFactory scp

имеет некоторые ссылки, уже упомянутые в этом вопросе, и:

Есть ли способ заставить maven scp wagon работать последовательно на платформе linux/mac/windows?

где упоминается стиль конфигурации, который я успешно использовал уже около 2 лет.

Я заметил, что следующая загрузка произошла, когда я установил maven только на родительский файл pom.xml:

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)

Но это не меняет ситуацию для детского проекта.

Вот выдержка из пом:

   <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>

2 ответа

Решение

Я должен признать, что я чувствую себя немного глупо, но, поскольку у других могут быть подобные проблемы, я показываю, что решило проблему:

<parent>
    <groupId>XXX</groupId>
    <artifactId>XXX</artifactId>
    <version>XXX-SNAPSHOT</version>
    <relativePath>../XXX/pom.xml</relativePath>
</parent>

таким образом, объявления пом, показанные выше, просто не собраны.

У вас есть макет подменю и

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

Не был найден при загрузке! Как вы решили проблему с помощью ссылки <relativePath> родитель, wagon-ssh был наконец найден в родительском помпе.

Кстати, если вы столкнетесь с этой проблемой mvn release и это единственный шаг, который потерпел неудачу, вам не нужно выпускать снова, просто введите mvn deploy чтобы завершить выпуск!

Я попробовал "mvn install" в папке pom.xml, и все было настроено автоматически. Теперь я могу запустить свой проект как maven install.

Использовать <url>scpexe://XXX/srv/repo/snapshots/</url> если только <url>scp://XXX/srv/repo/snapshots/</url>

искать deploy-ssh-external

Другие вопросы по тегам