JenkinsのGradle / Artifactory統合を使用するには、プロキシサーバーを介してGradleからWebアクセスする必要があります。問題の考えられる原因を減らすために、build.gradleにArtifactoryプラグインを手動で追加し、コマンドラインから実行します。
apply {
apply from: "http://gradle.artifactoryonline.com/gradle/plugins/org/jfrog/buildinfo/build-info-extractor-gradle/1.0.1/artifactoryplugin-1.0.1.gradle"
}
この説明に従って、ホームディレクトリの.gradle / gradle.propertiesで次のように指定しました。
systemProp.http.proxyHost=hostname
systemProp.http.proxyPort=8080
systemProp.http.proxyUser=de\\username
systemProp.http.proxyPassword=xxx
上記のプロキシ構成(別の方法で機能することがわかっている)では、失敗します。
11:33:17.699 [エラー] [org.gradle.BuildExceptionReporter]原因:java.io.IOException:サーバーがHTTP応答コードを返しました:URLの407:http ://gradle.artifactoryonline.com/gradle/plugins/org/ jfrog / buildinfo / build-info-extractor-gradle / 1.0.1 / artifactoryplugin-1.0.1.gradle
私は2つのプロキシサーバーから選択でき、1つは常に407
(プロキシ認証が必要)で応答し、もう1つは502
(不正なゲートウェイ)で応答するため、明らかに、proxyHostオプションとproxyPortオプションが使用されます。
ユーザー名(Active Directoryユーザーに基づく)にバックスラッシュが含まれているため、\\
およびの両方を試しました\
が、どちらも機能しませんでした。指定されたユーザーは、マシンおよびActive Directoryにログインしているユーザーとは異なります。このユーザーの資格情報はプロキシに対して有効ではないため、別のユーザーを指定できるようにする必要があります。
JenkinsまたはArtifactoryのGUIで同じオプションを設定しても機能しました。