0
Help us understand the problem. What are the problem?

posted at

updated at

エラー「Node Sass does not yet support your current environment」の解決方法

gulpが動かない。久しぶりにgulpを動かしてみたら、nodeエラーが出てコンパイルできない。
原因は、nodeのバージョンが対応していなかったこと。バージョンを変更することで無事解決。
今回はその手順を紹介していきたいと思います。

【エラー文】「node-sassはあなたの開発環境をサポートしていない」

terminal01.png

Node Sass does not yet support your current environment
とは、「Node Sassは、現在のあなたの開発環境をサポートしていない」ということ。

「詳しくはGithubを確認するよう」にとあるので、その下のGithubのリンクをクリックしてみる。
https://github.com/sass/node-sass/releases/tag/v4.14.1

【確認】node-sassが使用可能なnodeのバージョンをチェック

node-sass.png

まずは、現状確認。それぞれのOSでnodeの対応バージョンが違うので、自分の環境でどのnodeのバージョンまで使用できるのかを、まずここで確認する。

私の場合は、Windows 64-bitなので、nodeのバージョンは、現在14まで対応している、とある。(2021年11月現在)

【原因判明】自分の開発環境のNode.jsのバージョンを確認したら対応外だった

terminal02.png
インストールしてNode.jsのバージョンを確認するには、コマンドで「node --version」または「node -v」と打ちます。

私の場合、v16.13.0
つまりバージョン16がインストールされているということでした。
node-sassがサポートしてるのは、先ほどGithubで確認したところバージョン14まで。

ということで、gulpでタスクを動かした際にnode-sassが動かず、エラーがかえってきていたのです。原因判明しました。
私の場合、node.jsをダウングレードしなくてはいけません。

【対処】nvmを使ってnode.jsのバージョンを切り替える

ここから下は、私の環境においてやったnodeのダウングレードの方法を紹介します。
nvmをインストールしている人に向けた情報になります。
それ以外の方は、他の方法でnodeのバージョンを変更してください。

では、私の場合はnvmをインストールしているので、それを使ってnode.jsのバージョンを切り替えます。
nvmとは、Node.jsの管理ツールで、インストールした複数のNodeのバージョンを切り替えたりできる便利なツールです。

▼nvm(Node Version Manager)の公式Githubはこちら
https://github.com/coreybutler/nvm-windows

「複数のnodeバージョンを保持し、案件毎にバージョンを切り替えることができるのでオススメ」ということを聞き、先日インストールしたところでした。
その際、最新のnodeに更新してしまったのが原因で今回gulpが動かなくなってしまったようです。

nvmで複数のnodeのバージョンを管理しているので、インストールしている全バージョンを表示させる

nvm01.png
コマンド「nvm list」で、今現在、インストールしているnodeを表示させます。

*16.13.0 (Currently using 64-bit executable)
14.15.4

2つインストールしているうち、アスタリスクがついている「バージョン16」を現在使用中とのことです。
他に14がインストールされているので、こちらに切り替えれば、gulpが元のように正常に動くはずです。

nvmでエラー発生 exit status 5:文字化け

では、nvmのコマンドで切り替えます。nodeバージョンを16から14に切り替えるので
コマンド「nvm use 14.15.4
nvm02.png
エラー発生です。しかも文字化けしていて、何のエラーかわかりません!!
結論からいうと、「管理者権限がありません」ということ。
やり直しです。

管理者権限でnodeのバージョンを切り替えます

管理者権限でターミナルを起動

terminal03.png

「管理者として実行」を選び、ターミナルを「管理者権限」で起動しなおします。
コマンド管理者.png
コマンド「nvm list」を入れて、もう一度インストールしている全node.jsのリストを表示させます。

管理者権限でnodeのバージョンを切り替えます

コマンド管理者02.png
では、今回は管理者権限があるのでそのままコマンド「nvm use 14.15.4」と入れます。14と数字のところは各自切り替えたいバージョンを入れてください。
Now using node v14.15.4(64-bit)と出ました。うまく切り替えられたようです。

nodeのバージョン確認する

では、念のため確認してみます。
Node.jsのバージョンを確認するには、コマンドで「node --version」または「node -v
コマンド管理者03.png
v14.15.4と出ました。nodeのバージョン切り替え成功です!

これでエラーが出ていたnode-sassが動くようになり、無事gulpが使えるようになりました。
以上、どなたかの参考になれば嬉しいです。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
0
Help us understand the problem. What are the problem?