web-dev-qa-db-ja.com

ノードjsサーバーのターミナルでnodemonコマンドが認識されない

私は https://scotch.io/tutorials/authenticate-a-node-js-api-with-json-web-tokens からnode.jsサーバーのセットアップを行っています。 node.jsが初めてです。 npm install nodemon --saveをインストールしています。しかし、このnodemon server.jsでサーバーを実行すると。
端末の表示:

nodemonは、内部コマンドまたは外部コマンド、操作可能なプログラム、またはバッチファイルとして認識されません

enter image description here

node server.jsコマンドは機能し、サーバーを起動しましたが、nodemonコマンドは機能していません。

https://scotch.io/tutorials/authenticate-a-node-js-api-with-json-web-tokens ビデオからノードjsサーバーをセットアップしています。

なぜ動作しないのか分かりませんが、nodemonのインストール用のコマンドを試しました。

npm install -g nodemon 
npm install -g nodemon --save 
npm install --save-dev nodemon 
npm install -g nodemon@debug 

npm install -g --force nodemon

1つのリンクを見ました nodemonをグローバルにインストールできません、「nodemon」は認識されません 、しかし、Dドライブのプロジェクトの場所のためにパスを設定する方法がわかりません。

nodemon server.jsを実行したい。誰かがアイデアを持っている場合は共有してください。前もって感謝します。

42
V SH

グローバルにインストールする必要があります

npm install -g nodemon
# or if using yarn
yarn global add nodemon

そして、それはパス上で利用可能になります(あなたがこれを試してみて、それが機能しなかったことがわかりました、あなたのパスが台無しになるかもしれません)

グローバルにインストールするのではなく、ローカルにインストールしたバージョンを使用する場合は、package.jsonにスクリプトを作成できます

"scripts": {
    "serve": "nodemon server.js"
  },

そして使用する

npm run serve

オプションで、糸を使用する場合

# without adding serve in package.json
yarn run nodemon server.js
# with serve script in package.json
yarn run serve

npmは、グローバルモジュールでコマンドを検索する前に、ローカルのnode_modulesフォルダーを検索します。

108
ndonohoe

最初にnpm install --save nodemonを記述し、次にpackage.jsonに以下を記述します

"scripts": {
    "server": "nodemon server.js"
  },

次に書く

npm run server
13
Alok Prusty
  1. Nodemonをグローバルにインストールします。

    C:\>npm install -g nodemon
    
  2. プレフィックスを取得:

    C:\>npm config get prefix
    

    コンソールで次のような出力が得られます。

    C:\Users\Family\.node_modules_global
    

    コピーしてください。

  3. パスを設定します。
    [システムの詳細設定]→[環境変数]に移動し、[新規作成(ユーザー変数の下)]をクリックします。ポップアップフォームが表示されます。次の値を渡します。

    variable name = path,
    variable value = Copy output from your console
    
  4. では、Nodemonを実行します。

    C:\>nodemon .
    
10
Raju Singh

私は同じ問題に直面していました。 nodemonをdev-dependencyとしてインストールしました。サーバーを起動しようとすると、次のメッセージが表示されました。

nodemonは、内部コマンドまたは外部コマンド、操作可能なプログラム、またはバッチファイルとして認識されません

それから私はそれをグローバルにインストールし、サーバーを起動しようとしましたが、うまくいきました!

npm install nodemon -g
7
adityaekawade

グローバルにインストールする必要がありますか? nodemon server.jsを実行する必要があるだけですか?そうでない場合は、ローカルプロジェクトディレクトリからいつでも呼び出すことができます。ここにあるはずです:

node_modules/.bin/nodemon
4
Larry Turtis

ノードプレフィックスはPATH ENV変数にないため、グローバルにインストールされたモジュールは認識されません。これを試してください。 cmdプロンプトnpm config get prefixを開き、結果のパスをPATH環境変数に追加します。これで、任意の場所からnodemonを実行できるようになります。このリンクを試して、それに従います.fixing npm permissions https://docs.npmjs.com/getting-started/fixing-npm-permissions#option-2-change-npms-default-directory-to-another-ディレクトリ

3

この行はCMDの私の問題を解決しました:

npm install --save-dev nodemon
1
Bakos Bence

これは遅くなるかもしれませんが、気に入らないことを言った方が良いです:)

Nodemon globbalyをインストールしたくない場合は、npxを使用できます。実行時にパッケージがインストールされ、グローバルパッケージとして動作します(現時点では利用可能であり、グローバルには存在しないことに注意してください! )。

必要なのはnpx nodemon server.jsだけです。

0
Yaron Miro

Nodemonはdev依存関係であるため削除し、代わりにnodemonを使用します。

"scripts": {
     "start": "node server.js"
 },

これは私のために働いた。

0
user9832271

上記のオプションはすべて失敗しましたが、これに対する永続的な解決策を得ました。依存関係とrun npm installの下のpackage.jsonに次の行を追加します。これにより、nodemonパッケージがnode_modulesに追加されます。コーディングをお楽しみください。

"nodemon": "^1.17.*"
0
Amol Kamble

nodemon Itと入力するだけでノードアプリを実行できます。最初にindex.jsを実行します。そのファイルにエントリポイントを簡単に配置できます。

Nodemonをインストールしていない場合は、最初にインストールする必要があります

npm install -g nodemon

許可エラーが発生した場合は、使用します

Sudo npm install -g nodemon

Nodemonが存在するかどうかは、次の方法で確認できます。

nodemon -v
0
Shraddha Goel

Nodemonを使用するには、グローバルにインストールする必要があります。

Windowsの場合

 npm i -g nodemon 

Macの場合

 sudo npm i -g nodemon 

グローバルにインストールしたくない場合は、コマンドnpm i nodemonを実行してプロジェクトフォルダーにローカルにインストールできます。ローカルで実行すると、次のようなエラーが発生します。

 nodemon:「nodemon」という用語は、
コマンドレット、関数、スクリプトファイル、または操作可能なプログラムの名前として認識されません。名前のスペル
を確認するか、パスが含まれていた場合は、パスが
であることを確認して、再試行してください。

このエラーを削除するには、package.jsonファイルを開いて追加します

"scripts": {
     "server": "node server.js"
 },

その後、コマンドを実行するだけです

 npm run server 

そして、nodemonは適切に動作し始めます。

0
Amit Kumar

グローバルにインストールするだけ

 npm install -g  nodemon

Windows 10で動作しました。

nodemon app.js
0
Prathamesh More

次のコマンドを実行します:

npm install nodemon -g

Nodemonをインストールしますが、私の場合の問題は、nodemonを別の場所にインストールしていることです。

  • 上記のコマンドを実行
  • Nodemonがインストールされているインストール中にパスが表示されます。その後、[以下のリンクに移動してパスを確認してください] [1]

    [1]: https://i.stack.imgur.com/ld2sU.png

  • パスをnpmまでコピーして、環境変数に設定します
  • 次のコマンドを試してください、うまくいけば実行されます

      nodemon YourAppName.js
0
Junaid

開発マシンで新しいユーザープロファイルを作成した後、同じ問題が発生しました。

問題は、コンソール(コマンドPrompt\powershell ISE)を管理者として実行していないことです。

管理者として実行すると、この問題は解決しました。

0
Jim Jimson