私には問題があります:nodemonはnpmスクリプトを実行しません(例:npm start
)、
ただし、nodemonがnpmスクリプトの外部のコマンドラインで呼び出された場合、nodemonは通常どおり実行されます。
$ nodemon server.js
14 Feb 22:59:51 - [nodemon] v1.3.7
14 Feb 22:59:51 - [nodemon] to restart at any time, enter `rs`
14 Feb 22:59:51 - [nodemon] watching: *.*
14 Feb 22:59:51 - [nodemon] starting `node server.js`
Npmスクリプトでの呼び出し方法:
package.json
{
...
"scripts": {
"start": "nodemon server.js"
}
}
Npm startスクリプトが実行されるとき:
$ npm start
> [email protected] start /home/akul/Documents/aaa
> nodemon server.js
sh: 1: nodemon: not found
npm ERR! Linux 3.13.0-45-generic
npm ERR! argv "node" "/home/akul/npm-global/bin/npm" "start"
npm ERR! node v0.12.0
npm ERR! npm v2.5.0
npm ERR! code ELIFECYCLE
npm ERR! [email protected] start: `nodemon server.js`
npm ERR! Exit status 127
npm ERR!
npm ERR! Failed at the [email protected] start script 'nodemon server.js'.
npm ERR! This is most likely a problem with the aaa package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! nodemon server.js
npm ERR! You can get their info via:
npm ERR! npm owner ls aaa
npm ERR! There is likely additional logging output above.
npm ERR! Please include the following file with any support request:
npm ERR! /home/akul/Documents/aaa/npm-debug.log
私は解決策を探していましたが、見つかりませんでした。
Package.jsonにnodemonを追加することにより、この問題を解決できます。
npm install nodemon --save
この問題は、nodemonが/node_modules/.binに存在しない場合に発生します
インストール済みのグローバルパッケージnpm list -g --depth=0
を確認してください。 nodemon
が見つからない場合は、フラグ-g
または--save-dev
を付けてインストールしてください。 nodemon
はnodemon
にのみ使用されるため、_development
フラグ--save
をインストールしないでください。
現在のプロジェクトディレクトリの下で、実行します
npm install nodemon --save //save in package.json so that the following code cam find your nodemon
次に、「スクリプト」の下で package.json ファイルに「start」を追加します:「nodemon app.js」(またはエントリポイントは何でも)
したがって、次のようになります。
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "nodemon app.js"
}
そして、実行します
npm start
複雑なPATH設定を回避し、私のMacで動作します
希望はあなたを助けることができます;)
次のコマンドを使用して、nodemon
をグローバルにインストールします。それは私のコンピューターで動作し、あなたのシステムでも動作するはずです。
npm install nodemon -g --save
グローバルにインストールする権限が必要な場合があります。次のコマンドを使用して簡単に実行できます。
LINUX UBUNTUの場合:Sudo npm install nodemon -g --save
Fedoraの場合:
a)su
b)npm install nodemon -g --save
npm install nodemon -g --save
を使用してnodemonをインストールすると、グローバルnpmパッケージのパスがPATH変数に存在しませんでした。
$ PATH変数に追加するだけで修正されます。
ホームフォルダーの~/.bashrc
ファイルを編集し、次の行を追加します。
export PATH=$PATH:~/npm
ここで「npm」は私のグローバルnpmパッケージへのパスです。システムのグローバルパスに置き換えてください
単にグローバルにインストールする必要があります。 npm install -g nodemon
Nodemonをグローバルにインストールしてください。
Sudo npm install -g nodemon
herokuはデフォルトで実稼働環境で実行されるため、dev依存関係はインストールされません。
nodemonを依存関係として再インストールしたくない場合、適切な場所は依存関係ではなくdevDependenciesにあるため、そうすべきではないと思います。
代わりに、次のようなローカルホストでのみnodemonを実行することにより、2つのnpmスクリプトを作成してこのエラーを回避できます。
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node app.js",
"start:dev": "nodemon --watch"
},
プロジェクトをローカルで実行したい場合は、ターミナルnpm run start:dev
で実行するだけで、nodemonによってapp.jsがロードされます。
herokuではnpm start
がデフォルトで実行され、通常のノードコマンドからapp.jsをロードすると、そのエラーが解消されます。
このソリューションは私のために働いていました:
Nodemonをグローバルにインストールしたと仮定します。完了したら、次の手順を実行します。
.bash_profileファイルを開きます。
nano .bash_profile
これを過ぎて、bashプロファイルに新しいエイリアスを追加します。
alias nodemon='~/.npm-global/lib/node_modules/nodemon/bin/nodemon.js'
これで、nodemonコマンドをどこでも使用できます。
この問題が発生し、アプリケーションでnpm install nodemon --save
コマンドを使用した後でも、nodemonに問題がありました。
Nodemonをグローバルにインストールした後、次のコマンドを使用して解決しました:npm install nodemon -g
まず、nodemonを作業フォルダーにインストールします。
npm install nodemon
Nodemonのパスをシステム環境の環境変数のパス変数に追加します。私の場合、nodemonのパスはそうでした。
C:\Users\Dell\Desktop\Internship Project\schema\node_modules\.bin
それは私のために働いた。
いくつかの異なるソリューションから少しミックスとマッチを行う必要があったため、この問題を修正した方法を追加したかったのです。参考までに、これはWindows 10 PCの場合です。nodemonは数か月間完全に機能していましたが、npxでローカルに実行しない限り、突然コマンドが見つかりませんでした。ここに私の手順がありました-
npm list -g --depth=0
を実行して、グローバルにインストールされているかどうかを確認します。私の場合はインストールされているので、新しく起動します...npm uninstall -g nodemon
を実行しましたnpm install -g --force nodemon --save-dev
を使用して再インストールしました(最初にnpm install -g nodemon --save-dev
を実行して、残りの手順を実行することをお勧めします。うまくいかない場合は、手順2および3を使用して、力)。npm config get prefix
を使用してnpmフォルダーの場所を確認しました。この場合は、C:\ Users\username\AppData\Roaming\npmにありますexport PATH=%PATH%;C:\Users\username\AppData\Roaming\npm;
になるように書き出す方法をわずかに変更する必要がありました(明らかに「ユーザー名」をユーザー名またはステップ4で取得したファイルパスに置き換えてください)これが、私が持っている限り、この問題に苦労している人の助けになることを願っています!
同じ問題が1日前にうまく機能していた場合。 nodemonがシステム上にグローバルに存在するかどうかを最初に確認する非常に簡単な修正
チェックする
npm list -g --depth=0
表示されない場合は、npm install -g nodemon
をインストールします(gはグローバルを表します)
それでも動作しない場合は、環境変数を設定する必要があります私はWindows OSを使用しています Windowsでは、
Control panel>System>Advanced System Settings>Environment Variables>double-click on PATH
このPATHを持っているかどうかを確認してくださいC:\Users\yourUsername\AppData\Roaming\npm
そうでない場合、既存のパスがいくつか表示されます。セミコロンで区切って追加してください。それでおしまい! 私のために働いた。私のノードはC:..\Roaming\npmにインストールされており、PATHが異なる場合は、適用可能なものを入力します。
Node.jsはいつでも再インストールできます。この問題が発生した場合、修正できませんでしたが、Nodeの現在のバージョンを更新するだけでした。次のリンクで更新できます: https://nodejs.org/en/download/
NPMは、パッケージの管理とダウンロードに使用されます。ただし、Nodeパッケージを実行するツールとしてNPXを使用する必要があります
NPX nodemonを使用してみてください...
お役に立てれば!
--save、-g、package.jsonスクリプトの変更は機能しませんでした。コマンドライン内でnpm start
を実行(またはnpx nodemon
を使用)しました。 Visual Studioコードターミナルを使用します。成功すると、次のメッセージが表示されます。
[nodemon] 1.18.9
[nodemon]いつでも再起動するには、rs
と入力します
[nodemon]ウォッチング:。
[nodemon] node app.js
の開始
幸運を!