Я пытаюсь протолкнуть свои артефакты в Nexus от Jenkins. При развертывании на Nexus от Jenkins я получаю следующую ошибку:

Сообщение об ошибке в выводе консоли Jenkins:

15:59:06 [ОШИБКА] Не удалось выполнить цель org.apache.maven.plugins: maven-deploy-plugin: 2.8.2: deploy (default-deploy) в проекте sbx-java-webapp: не удалось развернуть артефакты / метаданные : Невозможно получить доступ с типом по умолчанию с использованием доступных фабрик соединителей: BasicRepositoryConnectorFactory: Невозможно получить доступ с использованием зарегистрированных фабрик транспортеров: WagonTransporterFactory: java.util.NoSuchElementException

15:59:06 [ОШИБКА] роль: org.apache.maven.wagon.Wagon

15:59:06 [ОШИБКА] roleHint: "http

15:59:06 [ОШИБКА] -> [Справка 1]

15:59:06 [ОШИБКА]

15:59:06 [ОШИБКА] Чтобы увидеть полную трассировку стека ошибок, повторно запустите Maven с ключом -e.

15:59:06 [ОШИБКА] Перезапустите Maven с помощью переключателя -X, чтобы включить полное ведение журнала отладки.

15:59:06 [ОШИБКА]

15:59:06 [ОШИБКА] Дополнительные сведения об ошибках и возможных решениях см. В следующих статьях:

15:59:06 [ОШИБКА] [Справка 1] http: //cwiki.apache. org / confluence / display / MAVEN / MojoExecutionException

Я пробовал несколько способов заставить эту работу работать. Но когда я использую цель развертывания maven на своем компьютере с Windows, он развертывает мои артефакты в том же репозитории Nexus без каких-либо сбоев. Однако от Дженкинса я получаю эту ошибку. В обеих средах используемые мной файлы pom.xml и settings.xml одинаковы. Я пробовал использовать разные версии maven в jenkins, чтобы решить эту проблему, но без помощи.

Я уже пробовал упомянуть wagonProvider в CLI, а также settings.xml, а также пытался использовать расширения для wagonProvider в сборке, и я даже использовал extension.xml и включил его в дескриптор в maven версии 3.0.5, где WagonTransporterFactory доступен, но ни один из они помогают мне. Я также пробовал переустановить и перенастроить Jenkins, но это мне тоже не помогло.

Если мы сможем решить эту проблему, это будет большим подспорьем. Спасибо.

1
Sharoukh Akbar 27 Май 2018 в 02:48

1 ответ

Лучший ответ

Ох .... Я решил проблему. Другой пример, который показывает, что небольшая ошибка может привести к более серьезной проблеме.

Проблема возникла, когда я передавал свой URL-адрес репозитория Nexus в качестве системной переменной в jenkins для команды развертывания maven следующим образом:

nexus_rel_repo = "$ {NEXUS_REPO_URL}"

Где NEXUS_REPO_URL уже был строковым параметром, который я назначил в Jenkins. И nexus_rel_repo - моя системная переменная, и здесь вы можете видеть, что я использовал двойные кавычки , когда назначал свой URL-адрес репозитория Nexus, который уже является строковым параметром, для nexus_rel_repo. Наличие этих лишних двойных кавычек нарушило соединение.

Спасибо всем, кто изучил эту проблему и уже изучил ее.

1
Sharoukh Akbar 27 Май 2018 в 20:36