ライブラリを追加したらビルドエラーが出た場合の対処例

プロジェクトに Firebase の機能を新しく追加する際、build.gradle に依存関係を追加します。ある日、ここに1行の依存関係を追加したところ、ビルドエラーが発生し、ビルドが通らなくなってしまいました。

筆者が試した解決策についてメモしておこうと思います。


発生したエラーについて

Program type already present: androidx.appcompat.R$anim

この様なエラーが発生しました。また、以下の様な例外が発生することもあります。

TaskDependencyResolveException

恐らく、何らかの依存関係のトラブルが発生した事が分かります。


試したことについて

ライブラリの古くなっているバージョンを新しくしてみます。

build.gradle を Android Studio のエディタで開くと、古いバージョンのライブラリは、背景が黄色く表示されます。

この行にマウスカーソルを合わせると、最新のバージョンの値が表示されますので、その値に変えてみます。


また、プロジェクトをクリーンして、再ビルドしてみます。

念のため、Android Studio も再起動してみます。

これでも駄目だった場合は、ファイルメニュー→キャッシュの破棄/再起動を試してみます。


筆者の場合は、これらを複合して試すうちに、ビルドエラーが出なくなりました。

(不思議なことに、エラーが一度出なくなると、ライブラリのバージョンを古い値に戻しても、ビルドエラーが出なかったりします・・・。)

Firebase の様々な機能を試す場合、たくさんのライブラリを追加することになりますので、依存エラーが出ることが多いかと思います。

同じ様な問題に遭遇した方が、このメモで何かの助けになれば幸いです。

※掲載内容は、記事公開時点のものです。紹介されているサービス内容は変更される場合がありますので、ご利用の際は事前にサービス提供元等をご確認ください。

shiba

スマホアプリエンジニアです。
Firebaseについて勉強した事を書いていこうと思います。

銀座ITラボ | FirebaseやAWSに関する技術情報を配信中

銀座ITラボは、iOS/Androidアプリなどのスマホアプリ、Firebase、AWSなどのクラウドサービス、Webシステム等の技術情報に関する記事を紹介するシンプルメーカーのオウンドメディアです。