The engine “node” is incompatible with this module.エラーの解決方法

スポンサーリンク

The engine “node” is incompatible with this module.

create-react-app で新しいReactアプリを作ろうとした際に、表題のエラーが起きることがあります。

The engine "node" is incompatible with this module. Expected version "^6.14.0 || ^8.10.0 || >=9.10.0".

こんな感じのエラーが出ると思いますが、これはnodeのバージョンが期待されているものと違うためです。

なので、nodeのバージョンをエラーに出ているExpected versionに切り替えれば解決します。

現在使っているnodeのバージョンを確認するのは下記コマンドです。

$ node -v
v8.2.0

nodeのバージョン管理ツールをいれていない方は、ぜひこの機会に導入をお勧めします。そうでないとnodeのバージョンを切り替えるたびにインストールし直さねばならず大変な手間です。

nvmやnodebrewを使えば簡単にnodeのバージョンを切り替えることができます。

導入にあたっては下記なんかを参考にされてください。

Node.jsの開発環境の構築 - nvmとnodebrew - hdixのブログ
nvmとnodebrewは どちらも環境にNode.jsのバージョンを指定してインストールし、インストールした複数のNode.jsを切り替えて使うことができる。 機能の違いとしては、nvmはLong Time Supportのバージョンを自動的に選別してくれる機能がある。構成を選ぶ際には参考にできるかも。 nvmのlt...

nvmでnodeのバージョンを切り替える

例えばnvmを使っていれば、下の手順でnodeのバージョン切り替えは完了です。

まず、切り替えたいバージョンをインストールします。

$ nvm install v9.10.0

インストールできたら、使用するnodeを切り替えます。

$ nvm use v9.10.0

インストールされているnodeのバージョン一覧は下記コマンドで確認できます。

$ nvm ls

もう一度使用しているnodeのバージョンを確認してみましょう。

$ node -v
v9.10.0

これで正しいバージョンが入っていればエラーは出なくなります。