React Native の Android アプリを、リリース用ビルドしていた際、あまりにも時間がかかりすぎるので一旦終了して再度ビルドしようとしたところ、下記のエラーが発生しました。
十中八九、途中でビルドを強制終了したせいですね…。
Could not create service of type FileHasher using GradleUserHomeServices.createCachingFileHasher()
見たことのないエラーだったのでとりあえずググってみたところ、下記の記事がヒットしました。
Gradle :Could not create service of type FileHasher – Stack Overflow
https://stackoverflow.com/questions/45177977/gradle-could-not-create-service-of-type-filehasher/46094804
なお、環境は Windows です。
上記の記事によると、下記コマンドを実行すると直るなど、いくつか投稿がありました。
gradlew --stop
が、私の環境では fileHashes.lock
というファイルを削除するのが正解でした。
というか、エラーメッセージに書いてありましたね…。
ファイルパスは下記のとおりです。
C:\Users\[ユーザ名]\.gradle\caches\6.2\fileHashes\fileHashes.lock
しかし、エクスプローラから削除しようとしたところ、現在ファイルが開かれているので削除できませんという旨のエラーが表示されたので、下記コマンドで削除しました。
del C:\Users\[ユーザ名]\.gradle\caches\6.2\fileHashes\fileHashes.lock
上記を実行した後、再度リリース用ビルドを実行したところ、エラーが発生しなくなりました!
以上、React Native でリリース用ビルドを実行した際に発生した「Could not create service of type FileHasher using GradleUserHomeServices.createCachingFileHasher()」エラーの対処法でした。
コマンドプロンプトで表示されるエラーって、未だに読むの苦手です…。
もし、同じことでお困りの方のご参考になれば幸いです。