1
0

npx コマンドでCLIを実行したら"could not determine executable to run"って言われた

Posted at

動作環境について

デスクトップのWindows環境と、ラップトップのChromeOS(CrostiniでDebianが動作)環境の2種類で開発していた。Nodejsのバージョンはどちらもv20.22.0

経緯

理由は分からないが、あるプロジェクトではnpxコマンドでfirebaseエミュレーターを起動させる構成になっていた。そしてなぜかWSLではエミュレーターが動いたのにCrostini側でエラーが発生して起動しないという問題が発生。

npx firebase emulators:start --export-on-exit='./.emulator' --import='./.emulator'
npm ERR! could not determine executable to run

雑に訳すと「お前が入力したコマンドは実行できるように見えない」みたいな感じだと思われる。

原因:パッケージ名とコマンドが揃っていない。

エラーメッセージで検索するとすぐに情報が見つかった。

実行したいコマンドとパッケージ名が一致しない場合は、--packageまたは-pで対象のnpmパッケージを指定する必要があります。

確かにパッケージ名は"firebase-tools"なのに対し、コマンドは"firebase"なのでパッケージ名とコマンド名が違う。

npx --package firebase-tools firebase emulators:start --export-on-exit='./.emulator' --import='./.emulator'

なのでパッケージ名を指定するとエミュレーターが起動した。オプション無しだとSDK側を呼び出していたのではと思われるがよくわからない。

1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0