Skip to content

Firebase CLI エラー「FirebaseCommandException」の解決方法

問題の概要

FlutterFire CLIを使用して flutterfire configure コマンドを実行しようとすると、以下のエラーが発生します:

FirebaseCommandException: An error occured on the Firebase CLI when attempting to run a command.
COMMAND: firebase --version
ERROR: The FlutterFire CLI currently requires the official Firebase CLI to also be installed

このエラーは、公式のFirebase CLIが正しくインストールされているにもかかわらず、FlutterFire CLIがそれを認識できない場合に発生します。Windows、macOS、Linuxのいずれの環境でもこの問題が発生する可能性があります。

環境による差異

解決方法はOSや環境によって異なります。以下の解決策を順番に試してみてください。

主要な解決方法

1. Firebase CLIの再認証

Firebaseの認証トークンが期限切れまたは無効になっている可能性があります:

bash
firebase logout
firebase login --reauth

TIP

firebase projects:list を実行してエラーが発生する場合は、認証の問題である可能性が高いです。

2. Node.jsのバージョン確認

Firebase CLIは特定のNode.jsバージョンを要求します:

bash
node --version

現在のFirebase CLIでは、Node.js 18以上または20以上が必要です。バージョンが古い場合はアップグレードしてください。

bash
nvm install 18
nvm use 18
bash
# Node.js公式サイトから適切なバージョンをダウンロード

3. Windows環境での特別な対応

Windowsでは、Firebase CLIのスタンドアロンバイナリを使用する必要がある場合があります:

  1. Firebase CLI公式サイトから「Windows (バイナリ)」をダウンロード
  2. ダウンロードした firebase-tools-instant-win.exe をプロジェクトフォルダにコピー
  3. ファイル名を firebase.exe に変更
  4. 環境変数PATHにこのファイルがあるディレクトリを追加

4. プロジェクト設定の確認

Firebaseコンソールで以下の点を確認してください:

  1. 同じパッケージ名のアプリが既に存在していないか
  2. 削除予定のアプリが残っていないか(設定 → アプリ → 削除予定のアプリ)
  3. 手動でFirebaseプロジェクトを作成し、flutterfire configure で選択

プラットフォーム別の注意点

Windows

Windowsでの詳細な設定手順
  1. コントロールパネル → システムとセキュリティ → システム → システムの詳細設定 → 環境変数
  2. 「システム環境変数」の「Path」を選択し「編集」
  3. firebase.exe があるディレクトリパスを追加
  4. コマンドプロンプトを再起動して設定を反映

WARNING

PowerShellでは実行ポリシーによってスクリプトの実行が制限されている場合があります:

powershell
Set-ExecutionPolicy RemoteSigned -Scope CurrentUser

macOS

bash
# FlutterFire CLIの再インストール
dart pub global activate flutterfire_cli

# パーミッション問題がある場合
sudo flutterfire configure

Linux

bash
# Firebase Toolsの再インストール
npm install -g firebase-tools

# FlutterFire CLIの再アクティベート
dart pub global activate flutterfire_cli

その他の可能性と解決策

アプリIDの形式問題

iOSのアプリIDにアンダースコアなどの不正な文字が含まれていないか確認してください:

plaintext
❌ com.example.my_app  # アンダースコアは不可
✅ com.example.myapp   # 正しい形式

Androidマニフェストの確認

android/app/src/main/AndroidManifest.xml にパッケージ名が正しく設定されているか確認:

xml
<manifest 
    xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.yourapp"> <!-- ここに正しいパッケージ名 -->
>

キャッシュのクリア

Firebaseのキャッシュをクリアすると問題が解決する場合があります:

bash
# Windows
rm -r C:\Users\USERNAME\.cache\firebase

# macOS/Linux
rm -r ~/.cache/firebase

まとめ

FirebaseCommandExceptionエラーは、主に以下の原因で発生します:

  1. 認証問題 - firebase login --reauth で解決
  2. Node.jsバージョン - Node.js 18以上にアップグレード
  3. パス設定 - 環境変数PATHにFirebase CLIのパスを追加
  4. プロジェクト競合 - Firebaseコンソールで重複するアプリを確認

問題が解決しない場合は、Firebaseのデバッグログを確認してください:

bash
firebase debug-log

どの解決策も効果がない場合は、Firebaseプロジェクトを新規作成して再度設定するとほとんどの場合で問題が解決します。