JCenterの終了について
Monacaチームの小田川です。
Androidアプリを開発する際に使用されているサービスにJCenter
があります。JCenterは、Bintrayが提供しているサービスの一部になります。
JCenterを管理しているJFrogは、JCenterを含むBintray等のサービスを2021年5月1日で終了する案内を行っていましたが、その後の案内として、
というような異なる内容の案内が行われていました。
このブログ記事投稿時点(2022/02/04)では、JCenterは利用できているようなので、現状、JCenterは、読み取り専用リポジトリとしてサービスが提供されているようです。
今回は、JCenterが終了した場合の影響について見ていきたいと思います。
JCenterが終了した場合の影響1
MonacaでAndroidアプリ開発を行う場合、JCenterは、ビルド時に利用されています。ビルド中にJCenterが利用できない場合は、以下のようなビルドエラーが発生します。
> Failed to list versions for androidx.core:core.
> Unable to load Maven meta-data from https://jcenter.bintray.com/androidx/core/core/maven-metadata.xml.
> Could not get resource 'https://jcenter.bintray.com/androidx/core/core/maven-metadata.xml'.
> Could not GET 'https://jcenter.bintray.com/androidx/core/core/maven-metadata.xml'.
> Read timed out
MonacaでAndroidアプリ開発を行う場合のJCenterの設定は、ビルド時にビルドサーバ側で使用されるAndroidプラットフォームに設定されているため、MonacaクラウドIDE上からは修正を行うことができません。
Androidプラットフォーム 10系
からは、JCenterの設定が削除されているため、JCenterの影響は発生しませんが、Androidプラットフォーム 10系未満の場合は、JCenterの設定が行われているため、影響が発生します。
Monacaでは、Cordova 10.0でAndroidプラットフォーム 10.1.1
に対応しています。Cordova 9.0を利用している場合は、Cordoava 10.0にアップグレードする必要があります。
Androidプラットフォーム 10.1.1の設定方法等については、以下を参照していください。
JCenterが終了した場合の影響2
JCenterは、Androidのネイティブ開発に必要なライブラリーを提供しているサービスになるため、JCenterの設定は、Cordovaプラグインにも設定されている場合があります。
サードパーティー製CordovaプラグインにJCenterの設定が行われている場合、JCenterが終了した際には、JCenterが終了した場合の影響1
に記載したようなビルドエラーが発生します。
サードパーティー製Cordovaプラグインを使用してJCenterに関するビルドエラーが発生した場合は、JCenterに依存しない更新版が公開されていないか確認してみてください。
おわりに
JCenterが終了した場合は、Androidビルドでビルドエラーが発生する可能性があります。
MonacaプロジェクトでAndroidプラットフォーム 10系未満を使用していてJCenterに関するビルドエラーが発生する場合は、Androidプラットフォーム 10.1.1を使用してビルドを試してみてください。
Androidプラットフォーム 10.1.1を使用してもJCenterに関するビルドエラーが発生する場合は、対象のMonacaプロジェクトで利用しているでサードパーティー製CordovaプラグインにJCenterの設定が行われていないか確認し、更新版が公開されている場合は、更新版を試してみてください。