「かんたんコピペ帳」に一覧リストの並べ替え機能を追加しました。
そしてビルドしたところ、こんなエラーが。。。
Execution failed for task ':app:minifyReleaseWithR8'.
「minifyReleaseWithR8」の何かがアカンということですが、ググってもなかなか解決策が見つかず、EASビルドの無料回数だけが増えていく。。。
そこでエラーログを遡ってみたら、こんなエラーが見つかりました。
> Task :app:minifyReleaseWithR8 FAILED
ERROR:/home/expo/workingdir/build/node_modules/@react-native-community/masked-view/android/build/intermediates/runtime_library_classes_jar/release/classes.jar: R8: Type org.reactnative.maskedview.BuildConfig is defined multiple times: /home/expo/workingdir/build/node_modules/@react-native-community/masked-view/android/build/intermediates/runtime_library_classes_jar/release/classes.jar:org/reactnative/maskedview/BuildConfig.class, /home/expo/workingdir/build/node_modules/@react-native-masked-view/masked-view/android/build/intermediates/runtime_library_classes_jar/release/classes.jar:org/reactnative/maskedview/BuildConfig.class
なにやらよくわかりませんが、どうやら「@react-native-community/masked-view」があやしいかも。
You can only have one of either
https://docs.expo.dev/versions/latest/sdk/masked-view/@react-native-community/masked-view
(deprecated) or@react-native-masked-view/masked-view
installed in your project at any given time. React Navigation v6 and above requires@react-native-masked-view/masked-view
, so you should use that package instead if you are using the latest version of React Navigation.
EXPOの公式にちゃんと書いてありました。
「@react-native-community/masked-view」と「@react-native-masked-view/masked-view」は共存してはいけません、「React Navigation v6」を使う場合は「@react-native-masked-view/masked-view」を使ってね、ということです。
package.jsonを確認したところ、確かに「@react-native-community/masked-view」と「@react-native-masked-view/masked-view」の両方が入っていました!
というわけで「@react-native-community/masked-view」を削除して、めでたくビルドは成功しました。エラーログ大事ですね。
該当部分だけでなく、周囲を見渡すことも必要です。