(この質問は、私が以前に尋ねた質問について詳しく説明していますが、十分な違いがあるため、別の質問が必要だと思います)
Gradle フォーラムのこの投稿では、同様の症状について説明していますが、私の問題とはまったく同じではありません。
そこのポスターのように、エラーが発生します:
ID「org.sonarqube」のプラグインが見つかりません。
私のbuild.gradleファイルで次のようにSonarQube Gradleプラグインを使用しようとすると:
buildscript {
repositories {
mavenLocal()
maven { url 'http://[artifactory-url]:8081/artifactory/plugins-release/' }
}
dependencies {
classpath("org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:1.2")
}
}
apply plugin: 'org.sonarqube'
彼は Artifactory のインスタンスがプラグインをキャッシュしていたのに対し、私のインスタンスはキャッシュしていなかったと言っています。彼と同じように、私は企業のファイアウォールの内側にいて、Artifactory の管理者権限を持っていませんが、仮想リポジトリにはhttps://plugins.gradle.org/m2とhttp://jcenter.bintrayplugins-release
の両方が含まれ ていることがわかります。 .com . 通常、Artifactory サーバーからライブラリを要求するだけで、そのライブラリがすぐに検出されてキャッシュされますが、この場合は明らかに失敗しています。
行を削除するとapply plugin...
、次のエラーが表示されます。
> Could not find org.sonarsource.scanner.gradle:sonarqube-gradle-plugin:1.2.
Searched in the following locations:
file:/C:/Users/[username]/.m2/repository/org/sonarsource/scanner/gradle/sonarqube-gradle-plugin/1.2/sonarqube-gradle-plugin-1.2.pom
file:/C:/Users/[username]/.m2/repository/org/sonarsource/scanner/gradle/sonarqube-gradle-plugin/1.2/sonarqube-gradle-plugin-1.2.jar
http://[artifactory-url]/artifactory/plugins-release/org/sonarsource/scanner/gradle/sonarqube-gradle-plugin/1.2/sonarqube-gradle-plugin-1.2.pom
http://[artifactory-url]/artifactory/plugins-release/org/sonarsource/scanner/gradle/sonarqube-gradle-plugin/1.2/sonarqube-gradle-plugin-1.2.jar
したがって、Artifactory がプラグインの検索とキャッシュに失敗していると確信しています。https://plugins.gradle.org/m2/org/sonarsource/scanner/gradle/sonarqube-gradle-plugin/1.2/sonarqube-gradle-plugin-1.2.pomを参照すると、POM ファイルにアクセスできます。 JARファイルについても同じですが、 https://plugins.gradle.org/m2/org/sonarsource/scannerを参照すると、サブディレクトリとして「gradle」が含まれていないことに気付きました。それが関連しているかどうかはわかりませんが、おそらく Artifactory で発生している問題の原因はそれでしょうか?
これをプラグインに対するバグとして提起するべきか、それとも Artifactory の問題なのか、それとも単純に私たちの側の何らかの設定ミスなのか、私にはわかりません。どんな考えでも大歓迎です!
トレースで更新
@drorb のおかげで、Artifactory からトレースを取得し、以下を見つけました。
2016-04-12T10:28:40.918+01:00 https://plugins.gradle.org/m2/org/sonarsource/scanner/gradle/sonarqube-gradle-plugin/1.2/sonarqube-gradle-pluginにHEADリクエストを実行中-1.2.pom
2016-04-12T10:28:40.924+01:00 リモート情報リクエストでステータス {} (メッセージ: 501) を受け取りました - 見つからないリソースを返します
501 は「実装されていない」ため、これは plugins.gradle.org リポジトリが HEAD リクエストをサポートしていないことを示していると思います。これは、Artifactory が適切にクエリできないことを意味しているようです。他の人でも機能することに驚いています-おそらく、HEADリクエストを実行しないように変更できるArtifactory構成がいくつかありますか?
原因をさらに更新しますが、実際には答えではありません
さらに掘り下げると、HEAD リクエストが実際に適切な応答 (200 につながる 303) を返すことがわかったので、Artifactory サーバーからの接続に問題があると思います。これは答えとして追加する価値がないようですが、同様の問題を経験している他の人に役立つ場合に備えて、ここに残します.