先日、mavenリポジトリの一つであるjcenterが停止するアナウンスがされましたよね。
現時点でのjcenterの停止日は2022/02/01となっていますが、当初は2021/05/01とアナウンスがあり、焦った方も多いのではないでしょうか。
ということで、ずっと放置してた個人プロジェクトのbuild.gradleから試しにjcenter()
を削除しmavenCentral()
に置き換えたところ、エラーの中に以下を発見
Could not find com.android.billingclient:billing:1.0.
Searched in the following locations:
- https://dl.google.com/dl/android/maven2/com/android/billingclient/billing/1.0/billing-1.0.pom
- https://repo.maven.apache.org/maven2/com/android/billingclient/billing/1.0/billing-1.0.pom
Required by:
project :app
(BillingLibraryがいまだ1.0なのは置いといて。。。)
え、googleのMavenリポジトリにも、CentralリポジトリにもBillingLibraryのアーティファクト置いてないの!?
どうすりゃいいの!?
とビビりました。
結論から言うと、BillingLibraryは2.0.3まではjcenterに、それ以降最新版(2.1.0~3.x.x)はgoogleのリポジトリにアーティファクトがあるようです。
なので、2.1.0以降にアプデすれば、google()
の記述だけでよくなります。
なお、そもそも、jcenterの停止の前にBillingLibraryを3.0にアプデしないといけないので問題になることはないはずです。
2021 年 8 月 2 日以降、すべての新規アプリでは Billing Library バージョン 3 以降を使用する必要があります。2021 年 11 月 1 日までに、既存のアプリのアップデートはすべて Billing Library バージョン 3 以降を使用する必要があります
以下、参考スクショ。