昨日、アプリをビルドしてみましたが、すべて正常に動作しました。
今日、プロジェクトに何も変更がないのに、突然、次のような警告メッセージが表示されました。
Error:Could not find play-services-basement.aar (com.google.android.gms:play-services-basement:11.0.1).
Searched in the following locations:
https://jcenter.bintray.com/com/google/android/gms/play-services-basement/11.0.1/play-services-basement-11.0.1.aar
同じような問題を経験している人はいますか?
パッケージを検索しているリンクをたどると、基本的にはブラウザを通じて即座にダウンロードされます。サーバー側で何か変更があったのでしょうか? おそらく命名規則でしょうか?
play-services-basement.aar を探しているようですが、代わりに play-services-basement-11.0.1.aar を取得していますか? これは命名規則または Gradle の問題でしょうか?
ベストアンサー1
jcenter() には、本来は google() または maven() リポジトリから入手できるはずのライブラリのミラーがあります (意図的にそうしているのだと思います)。Gradle ビルドが機能する場合、プロジェクトで使用されるライブラリについて最初に探す場所は、repositories {..
jcenter() ミラーに gradle が探しているリリース (私の場合は com.google.android.gms:play-services-ads:15.0.1 など) がない場合、ビルドはこのようなエラーで失敗します。
したがって、jcenter() は以下のようにパーツの最後の場所にリストされる必要がありますrepositories {..
。
buildscript {
ext.kotlin_version = '1.2.50'
repositories {
google()
maven {
url 'https://maven.google.com/'
name 'Google'
}
jcenter()
}...
そして
allprojects {
repositories {
google()
jcenter()
}
}