Je suis nouveau sur Node.js, essayez d'apprendre express pour créer ma première application Web. Je suis resté bloqué sur mon tout premier exemple de code et j'ai besoin d'aide pour le faire fonctionner. Avant de publier cette question, j'ai fait une recherche sur le débordement de pile, trouvé des questions similaires mais je ne pouvais toujours pas y remédier.
Erreur: impossible de trouver le module «express»
J'utilise mac os 10.8.2 . J'ai installé Node.js en utilisant nvm
.
node.js: chemin d'accès au nœud 0.8.20: /Users/feelexit/nvm/v0.8.20/bin/node chemin à exprimer: / Users / feelexit / nvm / node_modules / express
voici mon exemple de code: ce fichier se trouve à:
/Users/feelexit/WebstormProjects/learnnode/node_modules/index.js
var express = require('express');
var app = express();
app.get('/', function(req, res){
res.send('welcome to express');
});
app.listen(3000);
quand j'essaye d'exécuter cette commande node index.js
Je reçois le message d'erreur suivant, aidez-moi à le réparer.
Je vous remercie.
Error: Cannot find module 'express'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:362:17)
at require (module.js:378:17)
at Object.<anonymous> (/Users/feelexit/WebstormProjects/learnnode/node_modules/index.js:1:81)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.runMain (module.js:492:10)
feelexits-Mac:node_modules feelexit$
Mise à jour pour répondre à la question de chovy:
feelexits-Mac:~ feelexit$ npm install
npm ERR! install Couldn't read dependencies
npm ERR! Error: ENOENT, open '/Users/feelexit/package.json'
npm ERR! If you need help, you may report this log at:
npm ERR! <http://github.com/isaacs/npm/issues>
npm ERR! or email it to:
npm ERR! <npm-@googlegroups.com>
npm ERR! System Darwin 12.2.0
npm ERR! command "/Users/feelexit/nvm/v0.8.20/bin/node" "/Users/feelexit/nvm/v0.8.20/bin/npm" "install"
npm ERR! cwd /Users/feelexit
npm ERR! node -v v0.8.20
npm ERR! npm -v 1.2.11
npm ERR! path /Users/feelexit/package.json
npm ERR! code ENOENT
npm ERR! errno 34
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /Users/feelexit/npm-debug.log
npm ERR! not ok code 0
npm install
package.json
dossier. Cela aidera à déboguer le problème.Réponses:
Ça dit
Avez-vous installé express? Sinon, exécutez-le.
Et exécutez à nouveau votre programme.
la source
npm install express
montre cette erreurnpm ERR! Error: UNKNOWN, symlink '../express/bin/express'
. Semble être un problème plus profond.npm link
de recréer le lien respectif ...process manager
. Il n'a pas redémarré tout seul.Une fois que vous avez exprimé dans votre terminal, faites
Pour installer toutes les dépendances.
Ensuite, vous pouvez faire une application de nœud pour exécuter le serveur.
la source
Vérifiez si vous avez installé le
express
module. Sinon, utilisez cette commande:et si votre
node_modules
répertoire est à un autre endroit, définissez laNODE_PATH
variable d'environnement:la source
CTRL+C / CTRL+V
npm install
réponses: pensez-vous vraiment que quelqu'un essaierait d'exécuter quelque chose sans vérifier s'il est installé en premier? Sérieusement ...la source
npm install à partir du répertoire de votre application résoudra le problème car il installera tout ce qui est nécessaire
la source
Creuser un ancien fil ici MAIS j'ai eu cette même erreur et j'ai résolu en naviguant vers le répertoire dans lequel mon NodeApp réside et en cours d'exécution
npm install -d
la source
-d
est le débogage pour npm, ce-D
sont les dépendances dev.Sauf si vous définissez Node_PATH , la seule autre option est d'installer express dans le répertoire de l'application, comme
npm install express --save
. Express peut déjà être installé maisnode
ne peut pas le trouver pour une raison quelconquela source
Votre module express se trouve dans un répertoire différent de celui de votre projet. C'est probablement le problème puisque vous essayez de le
require()
faire localement. Essayez de déplacer votre module express de / Users / feelexit / nvm / node_modules / express vers / Users / feelexit / WebstormProjects / learnnode / node_modules / express . Ces informations peuvent vous donner plus de détails sur les structures de fichiers node_module.la source
si votre fichier principal est situé à,
/Users/feelexit/WebstormProjects/learnnode/node_modules/index.js
alors express doit être situé à/Users/feelexit/WebstormProjects/learnnode/node_modules/node_modules
car le nœud recherche toujours les modules dans./node_modules
(et son dossier interne) lorsque le chemin ne commence pas par./
ou/
( plus d'informations ici )Je pense que vous manquez placé votre fichier principal dans le dossier du module
la source
pour ce scénario, exécutez la commande npm install express en utilisant votre invite cmd pour le dossier respectif dans lequel vous souhaitez exécuter le programme. Exemple Je veux exécuter le programme de module express server.js dans F: \ nodeSample. Alors lancez "npm install express" dans ce dossier particulier puis lancez server.js
la source
Exécutez la
npm install express body-parser cookie-parser multer --save
commande dans le même répertoire avec votre fichier nodejs de code source pour résoudre ce problème. P / s: vérifiez votre répertoire après l'exécution de la commande pour en savoir plus!la source
Dans de rares cas, le cache npm peut être corrompu. Pour moi, ce qui a fonctionné était:
En règle générale, le gestionnaire de packages détecte la corruption et effectue une récupération par lui-même, ce qui n'est généralement pas nécessaire. Cependant, dans mon cas, Windows 10 s'est planté à quelques reprises et je suppose que cela peut avoir été lors d'une opération de récupération. J'espère que cela aide quelqu'un!
Plus d'informations: https://docs.npmjs.com/cli/cache
la source
J'ai rencontré un problème similaire et à la fin c'était une question d'anciennes dépendances qui gâchaient mon serveur Heroku.
Dans le dossier de mon projet, j'ai exécuté:
J'espère que ça aide
la source
npm ERR! Error: ENOENT, open '/Users/feelexit/package.json'
Cela se produit en raison d'autorisations manquantes ou de fichiers dissociés pendant que npm fonctionnait.
Cela signifie que l'exécution en
npm
tant que cet utilisateur n'a pas assez de droits pour lire / écrire à partir d'un fichier, dans ce cas package.json.essayez d'ajouter
sudo
avant la commande entière - cela devrait résoudre.$ sudo npm install -g express
$ Password:*******
Le mot de passe serait votre mot de passe administrateur de votre mac.
-g
flag installera ce module (express) dans le contexte global du nœud - ce qui signifie que le nœud reconnaîtra / devrait reconnaître leexpress
module depuis n'importe quel fichier js sans avoir à fournir un chemin complet vers le module utilisé.J'espère que cela t'aides!!
la source
J'ai eu le même problème. Mon problème était que je devais passer au répertoire du projet Node.js sur la ligne de commande avant d'installer express.
la source
Je suppose que c'est un cours du cours de développement Web de Colt Steele ... Je cherchais la même réponse quant à la raison pour laquelle j'ai fini avec cette erreur aussi .. Colt ne le dit pas mais vous prenez le dossier node_module et déplacez dans le nouveau dossier dans lequel vous travaillez ... c'est ce qui a fonctionné pour moi.
la source
Parfois, la version ne correspond pas à package.json. Correction du problème en vérifiant le package.json puis utilisez les commandes suivantes: npm install [email protected] il a résolu pour moi.
la source
As-tu essayé
Si vous recherchez spécifiquement juste express
la source