J'ai un problème: nodemon ne s'exécute pas à partir du script npm (par exemple, npm start
),
mais si nodemon est appelé sur la ligne de commande en dehors du script npm, nodemon s’exécute normalement.
$ 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`
Comment s'appelle-t-il dans le script npm:
package.json
{
...
"scripts": {
"start": "nodemon server.js"
}
}
Lorsque le script de démarrage npm est exécuté:
$ 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
Je cherchais une solution, mais je n’en ai pas trouvé.
Vous pouvez résoudre ce problème en ajoutant nodemon à votre package.json
npm install nodemon --save
Le problème se produit lorsque nodemon n'existe pas dans /node_modules/.bin
Essayez de vérifier les packages globaux installés npm list -g --depth=0
. Si vous ne trouvez pas nodemon
, - installez-le avec l'indicateur -g
ou --save-dev
. N'installez pas nodemon
avec l'indicateur --save
, car nodemon
utilise uniquement pour development
.
sous votre répertoire de projet actuel, exécutez
npm install nodemon --save //save in package.json so that the following code cam find your nodemon
puis sous "scripts" dans votre package.json fichier, ajoutez "start": "nodemon app.js" (ou quel que soit votre point d'entrée)
donc ça ressemble à ça:
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "nodemon app.js"
}
puis courir
npm start
Cela évite de compliquer les réglages PATH et cela fonctionne sur mon mac
L’espoir peut vous aider;)
Installez nodemon
globalement en utilisant la commande suivante. Cela fonctionne sur mon ordinateur et je suis sûr que cela fonctionnera également sur votre système.
npm install nodemon -g --save
Parfois, vous devriez avoir la permission de l'installer globalement. Cela peut être facilement fait en utilisant la commande suivante.
Dans LINUX UBUNTU: Sudo npm install nodemon -g --save
Dans Fedora:
a) su
b) npm install nodemon -g --save
Lorsque j'ai installé nodemon avec:npm install nodemon -g --save
, mon chemin d'accès aux packages npm globaux n'était pas présent dans la variable PATH.
Si vous venez de l'ajouter à la variable $ PATH, il sera corrigé.
Editez le fichier~/.bashrc
dans votre dossier de départ et ajoutez cette ligne: -
export PATH=$PATH:~/npm
Ici "npm" est le chemin d'accès à mes paquets npm globaux. Remplacez-le par le chemin global de votre système
Vous devez simplement l'installer globalement . npm installer -g nodemon
Cette solution avait fonctionné pour moi:
Je suppose que vous avez installé nodemon globalement. Si c'est fait, suivez ces étapes:
ouvrez votre fichier .bash_profile:
nano .bash_profile
passé ceci pour ajouter un nouvel alias dans votre profil bash:
alias nodemon='~/.npm-global/lib/node_modules/nodemon/bin/nodemon.js'
Vous pouvez maintenant utiliser la commande nodemon n'importe où.
Essayez d'installer nodemon globalement.
Sudo npm install -g nodemon
heroku s'exécute dans un environnement de production par défaut afin de ne pas installer les dépendances dev.
si vous ne voulez pas réinstaller Nodemon en tant que dépendance, je pense que vous ne devriez pas le faire car son emplacement est approprié dans devDependencies et non dans les dépendances.
à la place, vous pouvez créer un script à deux NPM pour éviter cette erreur en exécutant nodemon uniquement dans votre hôte local comme ceci:
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"start": "node app.js",
"start:dev": "nodemon --watch"
},
et lorsque vous souhaitez exécuter le projet localement, exécutez simplement votre terminal npm run start: dev et il chargera app.js par nodemon.
tandis que dans heroku, npm start s’exécute par défaut et charge app.js à partir d’une commande de nœud normale, ce qui vous permet d’éliminer cette erreur.
J'ai eu ce problème et même après avoir utilisé la commande npm install nodemon --save
dans mon application, j'avais toujours un problème avec nodemon.
Je viens de résoudre après avoir installé nodemon globalement, en utilisant la commande: npm install nodemon -g
Installez d’abord nodemon dans votre dossier de travail en
npm install nodemon
Ajoutez le chemin de nodemon à la variable chemin de la variable d'environnement de l'environnement système . Dans mon cas, le chemin de nodemon était.
C:\Users\Dell\Desktop\Internship Project\schema\node_modules\.bin
Cela a fonctionné pour moi.
Je voulais ajouter comment j'ai résolu ce problème, car je devais mélanger et assortir différentes solutions. Pour référence, il s’agit d’un PC sous Windows 10, nodemon fonctionnait parfaitement depuis des mois, puis tout à coup, la commande n’a pas été trouvée à moins d’être exécutée localement avec npx. Voici mes pas -
npm list -g
--depth=0
, dans mon cas, elle a été installée. npm uninstall -g nodemon
npm install -g --force nodemon --save-dev
(il peut être recommandé d'essayer d'exécuter npm install -g nodemon --save-dev
en premier, de suivre le reste des étapes et, si cela ne fonctionne pas, recommencez les étapes 2 et 3 en utilisant --force).npm config get prefix
, qui dans mon cas se trouvait dans C:\Utilisateurs\nom d'utilisateur\AppData\Roaming\npmexport PATH=%PATH%;C:\Users\username\AppData\Roaming\npm;
(remplacez évidemment "nom d'utilisateur" par votre nom d'utilisateur ou le chemin d'accès au fichier qui a été récupéré à l'étape 4).J'espère que cela aide tous ceux qui luttent contre ce problème depuis aussi longtemps que moi!
Vous avez eu le même problème sinon fonctionnait bien il y a un jour . Solution très simple Vérifiez tout d'abord si nodemon existe ou non sur votre système
Vérifier
npm list -g --depth=0
Si vous ne voyez pas, installez Il npm install -g nodemon
(g signifie globalement)
Si vous constatez que cela ne fonctionne toujours pas, vous devez configurer la variable d'environnement J'utilise Windows. Sous Windows, accédez à
Control panel>System>Advanced System Settings>Environment Variables>double-click on PATH
Maintenant, vérifiez si vous avez ce PATH C:\Users\yourUsername\AppData\Roaming\npm
Sinon, vous verrez des chemins existants, ajoutez-y simplement une séparation par des points-virgules. C'est tout! Travaillé pour moi. Pour moi, le noeud a été installé dans C: ..\Roaming\npm et pour vous si le PATH est différent, vous allez mettre dans tout ce qui est applcable.
Vous pouvez toujours réinstaller Node.js. Quand j'ai eu ce problème, je n'ai pas pu le résoudre, mais tout ce que j'ai fait, c'est mettre à jour la version actuelle de Node. Vous pouvez le mettre à jour avec ce lien: https://nodejs.org/en/download/
NPM est utilisé pour gérer les packages et les télécharger. Cependant, NPX doit être utilisé comme outil pour exécuter les packages de nœuds.
Essayez d’utiliser NPX nodemon ...
J'espère que cela t'aides!
--save, -g et la modification des scripts package.json ne fonctionnaient pas pour moi. Voici ce que vous avez fait: exécuter npm start
(ou utiliser npx nodemon
) dans la ligne de commande. J'utilise le terminal de code Visual Studio . Une fois le test réussi, le message suivant s'affiche:
[nodemon] 1.18.9
[nodemon] pour redémarrer à tout moment, entrez rs
[nodemon] regarde:.
[nodemon] à partir de node app.js
Bonne chance!