Ich benötige einen Webzugriff von Gradle über einen Proxyserver, um die Gradle / Artifactory-Integration für Jenkins verwenden zu können. Um mögliche Ursachen für Probleme zu reduzieren, füge ich das Artifactory-Plugin manuell in build.gradle hinzu und führe es über die Befehlszeile aus:
apply {
apply from: "http://gradle.artifactoryonline.com/gradle/plugins/org/jfrog/buildinfo/build-info-extractor-gradle/1.0.1/artifactoryplugin-1.0.1.gradle"
}
Nach dieser Beschreibung habe ich in .gradle / gradle.properties in meinem Home-Verzeichnis Folgendes angegeben:
systemProp.http.proxyHost=hostname
systemProp.http.proxyPort=8080
systemProp.http.proxyUser=de\\username
systemProp.http.proxyPassword=xxx
Mit der obigen Proxy-Konfiguration (von der sonst bekannt ist, dass sie funktioniert) schlägt dies fehl:
11: 33: 17.699 [ERROR] [org.gradle.BuildExceptionReporter] Auslöser: java.io.IOException: Server hat HTTP-Antwortcode zurückgegeben: 407 für URL: http://gradle.artifactoryonline.com/gradle/plugins/org/ jfrog / buildinfo / build-info-extractor-gradle / 1.0.1 / artifactoryplugin-1.0.1.gradle
Ich habe zwei Proxyserver zur Auswahl, und einer antwortet immer mit 407
( Proxy-Authentifizierung erforderlich ), der andere mit 502
( Bad Gateway ), daher werden offensichtlich die Optionen proxyHost und proxyPort verwendet.
Da der Benutzername (basierend auf einem Active Directory-Benutzer) einen Backslash enthält, habe ich beide \\
und beide ausprobiert \
, aber keiner hat funktioniert. Der angegebene Benutzer unterscheidet sich von dem Benutzer, der am Computer und in Active Directory angemeldet ist. Die Anmeldeinformationen dieses Benutzers sind für den Proxy nicht gültig, daher muss ich in der Lage sein, einen anderen Benutzer anzugeben.
Das Festlegen der gleichen Optionen in der Benutzeroberfläche von Jenkins oder Artifactory hat funktioniert.