Мне нужен веб-доступ из Gradle через прокси-сервер, чтобы использовать интеграцию Gradle/Artifactory для Jenkins. Чтобы уменьшить возможные причины проблем, я вручную добавляю плагин Artifactory в build.gradle и запускаю его из командной строки:
apply {
apply from: "http://gradle.artifactoryonline.com/gradle/plugins/org/jfrog/buildinfo/build-info-extractor-gradle/1.0.1/artifactoryplugin-1.0.1.gradle"
}
Следуя this, я указал следующее в .gradle/gradle.properties в моем домашнем каталоге:
systemProp.http.proxyHost=hostname
systemProp.http.proxyPort=8080
systemProp.http.proxyUser=de\\username
systemProp.http.proxyPassword=xxx
С указанной выше конфигурацией прокси-сервера (которая, как известно, работает), она терпит неудачу:
11: 33: 17.699 [ERROR] [org.gradle.BuildExceptionReporter] Вызвано: java.io.IOException: сервер ответил на код ответа HTTP: 407 для URL: http://gradle.artifactoryonline.com/gradle/plugins/org/jfrog/buildinfo/build-info-extractor-gradle/1.0.1/artifactoryplugin-1.0.1.gradle
У меня есть два прокси-сервера на выбор, и каждый всегда отвечает 407
(требуется прокси-аутентификация), а другой - с 502
(Bad gateway), поэтому, очевидно, используются параметры proxyHost и proxyPort.
Поскольку имя пользователя (на основе пользователя Active Directory) содержит обратную косую черту, я пробовал как \\
, так и \
, но не работал. Указанный пользователь отличается от пользователя, который зарегистрирован на машине и в Active Directory. Эти учетные данные пользователя недействительны для прокси-сервера, поэтому мне нужно указать другого пользователя.
Настройка тех же параметров в графическом интерфейсе Jenkins или Artifactory работала.