【Claude Code 失敗談 #5】生成されたライブラリのバージョンが古くてビルドエラー祭りになった話

社員ブログ

※Claude Codeを使用して記事を作成しています。

シリーズ:Claude Codeを使ったAndroidアプリ開発 失敗談

  • #1〜4:指示まわりの失敗4選
  • #5:生成されたライブラリのバージョンが古くてビルドエラー祭りになった話 ← 今回

はじめに

今回はコードの内容ではなく、ライブラリのバージョンにまつわる失敗です。

Claude Codeが生成するコードは基本的に正確ですが、「いつの時点の情報か」という問題があります。
特にAndroid開発はライブラリの更新が頻繁なため、このギャップが大きなトラブルを引き起こしました。

やらかしたこと

Firebaseを導入しようとして、Claude Codeにライブラリの追加をお願いしました。

Firebase AuthenticationとFirestoreをプロジェクトに追加してください。
libs.versions.tomlに追加する形でお願いします。

Claude Codeはすぐに libs.versions.toml の修正コードを生成してくれました。
指示通りに書き換えてビルドすると:

e: Unresolved reference: Firebase
FAILURE: Build failed with an exception.

エラーが出ました。
バージョンを指定し直してもらい再ビルド。
また別のエラー。

Duplicate class kotlin.collections.jdk8

3回目のエラー。
1時間格闘してようやくビルドが通りました。

なぜこうなったのか

Claude Codeの知識にはカットオフ(学習データの締め切り日)があります。
学習データより後にリリースされたバージョンは知りません。

Android・Firebase・Kotlinのライブラリは頻繁にアップデートされます。
Claude Codeが提示したバージョンが半年〜1年前のものだった場合、現在のGradle・KGPとの組み合わせで競合が起きることがあります

今回のケースでは:

  • Claude Codeが提示したFirebaseのバージョン → 古いもの
  • 私のプロジェクトのKotlinバージョン → 最新
  • 結果 → 互いに対応していないバージョン同士で競合

どう直したか

ライブラリのバージョンは公式ドキュメントを自分で確認するルールにしました。

Firebase の場合

Firebase Android リリースノート で最新バージョンを確認してから指示に含める。

Firebase AuthenticationとFirestoreを追加してください。
バージョンは以下を使ってください:
・firebase-auth: 23.x.x(← 公式サイトで確認した最新版)
・firebase-firestore: 25.x.x(← 同上)
libs.versions.tomlに追加する形でお願いします。

汎用的な確認方法

ライブラリのバージョンは以下のいずれかで確認できます。

確認先使い方
Maven Repositoryライブラリ名で検索して最新版を確認
公式ドキュメント各ライブラリの「Get Started」ページに最新バージョンが記載
Google’s Maven RepositoryAndroidライブラリに特化

Claude Codeに「バージョンを調べてもらう」試みは?

「最新バージョンを調べて使って」とお願いしたこともありましたが、Claude Codeはネットにアクセスしてリアルタイムで調べることができません(Web検索ツールなしの場合)。

そのため「最新のはずのバージョン」として自信を持って提示されたものが、実は古いことがあります。数値情報は自分で確認するのが確実です。

「バージョンは自分で確認する」を習慣にする

この失敗以降、ライブラリを追加するたびに以下の手順を踏むようにしました。

  1. Claude Codeに「このライブラリを追加したい」と伝える
  2. Claude Codeが提示したバージョンを公式サイトで確認
  3. 最新バージョンに修正してから libs.versions.toml を更新
  4. ビルドして確認

少し手間ですが、ビルドエラーの沼にハマる時間と比べれば圧倒的に速いです。

まとめ

Claude Codeが生成するコードの品質は高いですが、ライブラリのバージョン情報は鵜呑みにしないことが重要です。

「Claude Codeが言ったから正しいはず」という過信は禁物。
数値情報・バージョン情報だけは、自分で公式ソースを確認する習慣をつけましょう。

次回:【Claude Code 失敗談 #6】非推奨APIを鵜呑みにしてリリースしてしまった話

タイトルとURLをコピーしました