はじめましての人も、こんにちは。
のりです。
今回のテーマは、Angularで「npm start」コマンドを実行してもエラーが発生してしまう場合の対処法についてです。
それでは本編をどうぞ。
ターミナル上に、”npm config set scripts-prepend-node-path true”と入力すると警告が解除されるはずだよ!
「npm start」とエラー
先日からAngularの学習をスタートさせたのですが、ローカルサーバーを立ち上げるところで足止めを食らってしまいました。とほほ…。
Angularでは、ローカルサーバーを立ち上げる際に「npm start」というコマンドを入力してあげなければなりません。しかし、私の場合はコードを正しく実行させたのに以下のような警告がターミナル上に表示されました。
”
npm WARN lifecycle The node binary used for scripts is C:\Program Files (x86)\Nodist\bin\node.exe but npm is using C:\Program Files (x86)\Nodist\v-x64\12.18.2\node.exe itself. Use the `--scripts-prepend-node-path` option to include the path for the node binary npm was executed with.
> hello-world@0.0.0 start C:\Users\Owner\Dropbox\アプリ開発\Angular\hello-world
> ng serve
(長いので省略)
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR! A complete log of this run can be found in:
npm ERR! C:\Users\Owner\AppData\Roaming\npm-cache\_logs\2021-03-04T10_39_38_092Z-debug.log
”
初めてローカルサーバーを立ち上げた際には、警告も出ずスムーズに進めましたが2回目で突然、不具合発生。
Google先生で解決策を探そうにも、プログラミング初心者の私にはどこで不具合が生じているのか皆目見当もつきませんでした。
エラーの解決策
警告を解除して、ローカルサーバーを立ち上げる魔法のコード。
それは、「npm config set scripts-prepend-node-path true」。
これさえ入力してあげれば、すべて解決します。
ちなみに、1日かけてGoogle先生で解決策を探しましたが、解決策が出なかったのでUdemy講師に解決策を調べてもらいました。(余談ですが、Angularの学習はUdemyの講座で進めています。気になる方はこちらからどうぞ)
これは、nodistを利用する際の仕様みたいで、”npm install”や”npm script”を実行する際にも上記のコマンドを実行していないとWARRINGの警告が発生するみたいです。
今回のように突然WARRINGのメッセージが表示されたら、まずはコマンドで上記のコードを実行させたかどうかを疑ってみてください。
なんといっても、たった一行のコピペですからね。面倒だと思わず、nodistを使った学習を始める前にちゃちゃっとターミナルで実行してあげてください。
とはいえ、Angularの学習でNode.jsで学ぶ分野がエラーを引き起こしていたなんて…
もっと広い視野を持って勉強する必要がありそうです。ガクッ。
原因と対策
よくよく考えてみると、初めてローカルサーバーを立ち上げた後に停止コマンドを入力するのを忘れていたことが原因だったのかもしれません。一回目は成功したし…。
ローカルサーバーの停止コマンドはWindowsの場合は「Ctrl+C」、Macの場合は、「Cmd+C」です。
私は、Angularの学習をUdemyのAngular入門の方で始めたのですが、注意深く講師の方の話を聞いてみるとローカルサーバーを停止する場合のことも言及されていました。
完全に僕のやらかしです。
たぶん、AngularやNode.jsをこれから学ぶ初心者の方が最初に躓くであろうポイントが今回私が経験した「ローカルサーバーを停止させること」だと思うので、これから学習を始める方は注意してみてください。
まとめ
いかがでしたでしょうか。
僕と同じように「ローカルサーバーを立ち上げる際に躓いちゃったよ。どうしよう!?」と嘆いている初学者の助けになれれば幸いです!!
また、この記事の内容が気に入った方は、SNSやコメント等で教えていただけると嬉しいです!
それではまた次回、お会いしましょう。
バイバイ(^^)/
コメント