module.js: 338 throw err dans node.js
Je suis sur ubuntu et je suis en train de lancer un script à l'aide de nodejs et j'obtiens cette erreur.
/home/bebz/Documents/test# node server.js
module.js:338
throw err;
^
Error: Cannot find module 'merge-descriptors'
at Function.Module._resolveFilename (module.js:336:15)
at Function.Module._load (module.js:278:25)
at Module.require (module.js:365:17)
at require (module.js:384:17)
at Object.<anonymous> (/home/bebz/node_modules/express/lib/express.js:6:13)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Module.require (module.js:365:17)
Quel est le problème? Je suis dans le bon répertoire et aussi j'ai essayé de l'exécuter à l'aide de la racine mais rien ne se passe.
À l'intérieur server.js est
//get dependencies
var app = require("express")();
//handle request and response
app.get("/", function(req, res) {
res.send({name:"Hello Wolrd"});
});
//initializing a port
app.listen( 5000);
Un exemple simple pour montrer que node.js est travail.
source d'informationauteur Abdullah | 2015-02-07
Vous devez vous connecter pour publier un commentaire.
Il semble que le script a une dépendance non satisfaite - ce qui signifie que vous devez installer le module "fusion" descripteurs de première.
Il semble aussi que le script est à l'aide de "l'express" (et de "fusion-descripteurs" ressemble vraiment à une dépendance de "l'express") - parce que cela ne renvoie pas d'erreur certaines dépendances semblent être déjà installé.
De sorte que vous pourraient essayer d'installer les disparus via
npm install
ounpm update
.Mise à jour: Selon npmjs.org "fusion-descripteurs" est une dépendance de "l'express". En regardant votre stacktrace montre que vous avez "express" installée à l'échelle mondiale - ainsi, vous devriez essayer
npm update -g
Si cela ne résout pas votre problème, vous devriez jeter un oeil à cette question.
mnp mise à jour
Je le vois lorsque le module de l'ordre d'installation n'est pas parfait, ou plusieurs modules existent.
mnp sortes de mise à jour de cette autodérision les versions incorrectes.
Chaque fois que vous obtenez
module.js:338 throw err;
essayer de vérifier sinpm
est installé dans votre machine ou pas.Si vous obtenez le nom de la version, alors il est clair que
npm
est installé.Si vous n'obtenez pas le nom de la version, il y a un problème avec votre installation, ou il n'est pas installé.
Pour installer
npm
tapez cette commande dans votre Terminal:Également remarquer j'ai ajouté
sudo
avant lasudo sh
de commande en fonction de vos autorisations d'accès aux utilisateurs.Cette erreur se produit lorsque le nom du module et le nom de fichier ne correspond pas. Il est résolu après avoir utilisé le même nom pour le module et le nom de fichier. par exemple,
vous devez installer fusion des descripteurs de module. Ouvrez votre terminal ou votre invite de commande et exécutez cette commande: