nodemon funktioniert nicht: -bash: nodemon: Befehl nicht gefunden

72

Ich bin auf einem Mac mit El Capitan. Ich habe Knoten v5.6.0 und npm v3.6.0. Wenn ich versuche, nodemon auszuführen, erhalte ich:

-bash: nodemon: command not found

Ich dachte, dies könnte bedeuten, dass ich nodemon nicht installiert habe. Als ich versuchte, es mit ...

sudo npm install -g nodemon

... ich verstehe das:

npm ERR! Darwin 15.2.0
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "install" "-g"     "nodemon"
npm ERR! node v5.6.0
npm ERR! npm  v3.6.0
npm ERR! path /usr/local/bin/nodemon
npm ERR! code EEXIST

npm ERR! Refusing to delete /usr/local/bin/nodemon: ../lib/node_modules/nodemon/nodemon.js symlink target is not controlled by         npm /usr/local
npm ERR! File exists: /usr/local/bin/nodemon
npm ERR! Move it away, and try again.

npm ERR! Please include the following file with any support request:
npm ERR!     /Users/brianeoneill/npm-debug.log

Wenn es einen Unterschied macht, versuche ich, nodemon für ein Projekt auszuführen, das Express v4.13.1 verwendet

Vielen Dank für jede Hilfe, die Sie anbieten können!

Brian O'Neill
quelle
Haben Sie nodemon deinstalliert, bevor Sie versuchen, es global erneut zu installieren? npm uninstall nodemon
Sterling Archer
Ich habe das versucht und es hat nicht funktioniert. Ich habe jedoch gerade versucht, sudo npm install -g --force nodemon zu installieren, und das schien den Trick zu tun. Danke für Ihre Hilfe!!!!!
Brian O'Neill
Vielleicht
Sergey Andreev

Antworten:

114

Ich habe Folgendes versucht und keines hat funktioniert:

npm uninstall nodemon

sudo npm uninstall -g nodemon

Was funktionierte war:

sudo npm install -g --force nodemon
Brian O'Neill
quelle
Sehen Sie sich das folgende Video von der offiziellen Dokumentenseite docs.npmjs.com/getting-started/fixing-npm-permissions an . Gibt Ihnen einen besseren Einblick in das Problem.
Jinesh
1
Empfehlung zum Löschen des Pakets: 1 - Entfernen Sie die Zeile aus package.json 2 - und geben Sie diesen Befehl "node anfällig" ein
Dostonbek Oripjonov
55

Wenn Sie es lokal statt global ausführen möchten, können Sie es von Ihren node_modules aus ausführen:

npx nodemon

Alex Leibowitz
quelle
BEARBEITEN: Leider muss ich diesen Befehl jedes Mal verwenden, wenn ich mein Programm ausführen möchte, anstatt nodemon lokal zu installieren.
Trikot
24

Aus Ihrem eigenen Projekt.

npx nodemon [your-app.js]

Bei einer lokalen Installation ist nodemon in Ihrem Systempfad nicht verfügbar. Stattdessen kann die lokale Installation von nodemon ausgeführt werden, indem es aus einem npm-Skript (z. B. npm start) heraus aufgerufen oder verwendet wird npx nodemon.

ODER

Erstellen Sie einen einfachen Symbolik-Link

ln -s /Users/YourUsername/.npm-global/bin/nodemon /usr/local/bin

ln -s [von: wo installiert man 'nodemon'] [zu: Ordner, in dem sich das allgemeine Modul für den Knoten befindet]

Knoten: v12.1.0

npm: 6.9.0

Murphy
quelle
18

unter Windows ausführen:

npx nodemon server.js

oder fügen Sie in package.json config hinzu:

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

dann renne:

npm run dev
VnDevil
quelle
12

Ich benutze macOS / Linux , die Lösung, die für mich funktioniert, ist

npx nodemon index.js 

Ich habe alle Möglichkeiten ausprobiert, wie das Deinstallieren und Installieren von nodemon und das globale Installieren von nodemon . Starten Sie das Terminal neu, aber es funktioniert nicht.

Versuche solche Dinge nicht, um deine Zeit zu verschwenden.

Harter Patel
quelle
6

Ich hatte genau das gleiche Problem, erwarten Sie für Windows-Betriebssystem.

Für mich läuft

npm install -g nodemon --save-dev

(Beachten Sie das -g ) hat funktioniert.

Vielleicht hat jemand anderes, der dieses Problem unter Windows hat, die gleiche Lösung.

user2407334
quelle
- Speichern wird nach npm v5 nicht mehr benötigt
MJ Montes
5

Für nodemon: Befehl nicht gefunden Ich habe es mit vielen Links versucht, aber es hat nicht funktioniert. Dann habe ich es mit den folgenden Schritten versucht. Es hat gut funktioniert.

Folgen Sie diesem Schritt, es hat bei mir funktioniert.

Schritt 1: sudo su

Schritt 2: npm installiere -g nodemon --save-dev

Es funktioniert gut.

syed
quelle
4

Ich hatte das gleiche Problem, da ich zuvor meinen globalen Pfad für npm-Pakete geändert hatte.

So habe ich es behoben:

Bei der Installation von nodemon using: npm install nodemon -g --savewar mein Pfad für die globalen npm-Pakete in der PATH-Variablen nicht vorhanden.

Wenn Sie es nur zur Variablen $ PATH hinzufügen, wird es behoben.

Bearbeiten Sie die ~/.bashrcDatei in Ihrem Home-Ordner und fügen Sie folgende Zeile hinzu: -

export PATH=$PATH:~/npm

Hier ist "npm" der Pfad zu meinen globalen npm-Paketen. Ersetzen Sie es durch den globalen Pfad in Ihrem System

Natesh bhat
quelle
oder fügen Sie diese Zeile hinzu, wenn Sie Garn verwenden: export PATH = "$ (Garn global bin): $ PATH"
Russo
3

Nur für den Fall, dass Sie Windows verwenden, brauchen Sie nicht sudo

npm i -g nodemon
MJ Montes
quelle
2

FÜR FENSTERBENUTZER

Ich habe alles versucht, aber nichts hat bei mir funktioniert.

Was funktionierte war: - npx nodemon server

FOLGENDES WIRD DAS ERGEBNIS SEIN: - Geben Sie hier die Bildbeschreibung ein

Suprabhat Kumar
quelle
1
sudo su

dann

npm install nodemon 

arbeitete für mich

Frank Hag
quelle
1

In macOS habe ich diesen Fehler behoben, indem ich nodemon global installiert habe

npm install -g nodemon --save-dev 

und indem Sie den npm-Pfad zur Datei bash_profile hinzufügen. Öffnen Sie zunächst bash_profile in nano mit dem folgenden Befehl:

nano ~/.bash_profile

Zweitens fügen Sie der Datei bash_profile die folgenden zwei Zeilen hinzu (ich verwende die Kommentare "##", wodurch bash_profile besser lesbar wird).

## npm
export PATH=$PATH:~/npm
Akarsh SEGGEMU
quelle
1

Stellen Sie sicher, dass Sie ein Stammverzeichnis für npm besitzen, damit bei der Installation globaler Pakete ohne Verwendung von sudo keine Fehler auftreten.

Prozeduren: - im Stammverzeichnis

sudo chown -R yourUsername /usr/local/lib/node_modules
sudo chown -R yourUsername /usr/local/bin/
sudo chown -R yourUsername /usr/local/share/

Also jetzt mit

npm i npm -g 

Sie erhalten hier keine Fehler und keine Verwendung von Sudo. aber wenn Sie immer noch Fehlermeldungen erhalten , bestätigt node_modules wieder im Besitz

/usr/local/lib/

und stellen Sie sicher, dass Sie alles besitzen

ls -la

Geben Sie hier die Bildbeschreibung ein jetzt

npm i -g nodemon

wird funktionieren!

Ahmed Younes
quelle
1

Schreiben Sie einfach, was für mich funktioniert hat - (auf einem Windows-Computer, Knoten lokal im Projekt installieren), wenn Sie ihn nicht global installieren möchten (dh ohne das Flag -g), müssen Sie ihn verwenden

npx nodemon app

Dabei ist App Ihre App. js ist Ihre zu startende Programmdatei.

Arjit Sharma
quelle
0

In Windows Git Bash habe ich es behoben, indem ich Git Bash neu gestartet habe

AliFurkan
quelle
0

Setzen Sie --execarg insingle quotation .

zB wechselte ich "nodemon --exec yarn build-langs"zu "nodemon --exec 'yarn build-langs'"und arbeitete.

Masih Jahangiri
quelle