昨日まで動作していたプログラムが今日動作しなくなるという恐怖を味わったので対処法をまとめ。
ちなみに、影響があったのは Android のみでした。
参考にさせていただいた記事はこちらから。
Task :react-native-push-notification:compileDebugJavaWithJavac FAILED all of a sudden · Issue #1979 · zo0r/react-native-push-notification
https://github.com/zo0r/react-native-push-notification/issues/1979
ちなみに、こちらの投稿は本日 5月12日 7時に投稿されたものでした。
…こんなリアルタイムに投稿された記事を参考にしたのは初めてかもしれません。
さて、対処法ですが、まず android/build.gradle
を開き、下記の2行を追加します。
buildscript { ext { googlePlayServicesVersion = "4.3.3" // <- 追加 firebaseMessagingVersion = "21.1.0" // <- 追加 buildToolsVersion = "29.0.2" minSdkVersion = 16 compileSdkVersion = 29 targetSdkVersion = 29 } ...... }
なお、GooglePlayService
のバージョンはプロジェクトの環境に合わせて下さい。
私の場合は 4.3.3
でした。
次に、android/app/build.gradle
を開きます。
そして下記の一行を追加します。
dependencies { ...... implementation "com.google.firebase:firebase-messaging:21.1.0" ...... }
追加する項目は以上です!
あとは、react-native run-android
を実行してください。
私のプロジェクトでは、ビルドが react-native-push-notification
に到達したタイミングでエラーになっていたのですが、上記追加後は問題なく通過し、アプリを実行することができました!
ちなみに、どうやら Firebase が更新されたことが原因みたいです。
参考記事には「Firebase メッセージングパッケージのバージョンを修正した人は誰もいないと思います。Firebase は重大な変更を加えて新しいリリースを行いました」という投稿があり、確かに私も Firebase のライブラリ自体は更新していませんでした。
この記事を見つけるまでかなり時間を使ってしまい、ほぼ午前中いっぱいかかりました…。
が、無事解決したので良かったです。
以上、React Native の Android アプリで「Task :react-native-push-notification:compileDebugJavaWithJavac FAILED」エラーが発生した時の対処法でした。
ご参考になれば幸いです。