node.js - handling - nodejs express server
node.js, Error: no se puede encontrar el módulo ''express'' (17)
Soy nuevo en node.js, intento aprender express para construir mi primera aplicación web. se atascó en mi primer código de muestra. necesito ayuda para hacerlo funcionar. Antes de publicar esta pregunta, busqué en el desbordamiento de la pila, encontré algunas preguntas similares pero aún no pude solucionarlo.
Error: no se puede encontrar el módulo ''express''
Estoy usando mac os 10.8.2. Tengo node.js instalado usando nvm.
node.js: 0.8.20 ruta al nodo: /Users/feelexit/nvm/v0.8.20/bin/node ruta para expresar: / Users / feelexit / nvm / node_modules / express
aquí está mi código de muestra: este archivo se ubica en:
/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);
cuando intento ejecutar este archivo "node index.js"
Aparece el siguiente mensaje de error, ayúdame a solucionarlo. gracias .
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$
Actualiza para responder la pregunta 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! <[email protected]>
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
A menos que configure Node_PATH , la única otra opción es instalar Express en el directorio de la aplicación, como npm install express --save
. Express ya puede estar instalado pero el node
no puede encontrarlo por alguna razón
Compruebe si ha instalado express
módulo express
. Si no, usa este comando:
npm install express
y si su directorio node_modules
está en otro lugar, configure la variable de NODE_PATH
NODE_PATH:
set NODE_PATH=your/directory/to/node_modules;%NODE_PATH%
Desenterrando un hilo viejo aquí PERO tuve este mismo error y resolví navegando al directorio en el que reside mi NodeApp y ejecutando npm install -d
Después de que expreses en tu terminal, hazlo
npm install
Para instalar todas las dependencias.
Luego puede hacer la aplicación de nodo para ejecutar el servidor.
Dice
Cannot find module ''express''
¿Tiene Express instalado? Si no, ejecute esto.
npm install express
Y ejecuta tu programa de nuevo.
Ejecute npm install express body-parser cookie-parser multer --save
comando en el mismo directorio con su archivo nodo de código fuente para resolver este problema. P / s: ¡revisa tu directorio después de ejecutar el comando para entender más!
En casos raros, la memoria caché npm puede dañarse. Para mí, lo que funcionó fue:
npm cache clean --force
Generalmente, el administrador del paquete detectará la corrupción y volverá a buscar por sí mismo, por lo que generalmente no es necesario. Sin embargo, en mi caso, Windows 10 se bloqueó varias veces y sospecho que puede haber sido durante una operación de búsqueda. Espero que ayude a alguien!
Más información: https://docs.npmjs.com/cli/cache
La instalación de npm desde el directorio de tu aplicación solucionará el problema ya que instalará todo lo que se requiera.
Me encontré con un problema similar y al final fue una cuestión de antiguas dependencias que estaban estropeando mi servidor Heroku.
Mientras estaba en la carpeta de mi proyecto, corrí:
npm uninstall
npm install
Espero que ayude
Supongo que este es un curso del curso de Desarrollo Web de Colt Steele ... Estaba buscando la misma respuesta para saber por qué terminé con ese error también. Colt no lo dice, pero usted toma la carpeta node_module y se mueve en la nueva carpeta en la que estás trabajando ... eso es lo que funcionó para mí.
Tiene su módulo expreso ubicado en un directorio diferente de su proyecto. Ese es probablemente el problema ya que está tratando de require()
localmente. Intente mover su módulo expreso de / Users / feelexit / nvm / node_modules / express a / Users / feelexit / WebstormProjects / learnnode / node_modules / express . Esta información puede brindarle más detalles sobre las estructuras de archivos de node_module.
Yo tuve el mismo problema. Mi problema es que tengo que cambiar al directorio del proyecto Node.js en la línea de comandos antes de instalar Express.
cd /Users/feelexit/WebstormProjects/learnnode/node_modules/
para este escenario, ejecute el comando npm install express utilizando su indicador de cmd para la carpeta respectiva donde desea ejecutar el programa. Ejemplo Deseo ejecutar el programa de módulo express server.js en F: / nodeSample. Ejecute "npm install express" en esa carpeta en particular y luego ejecute server.js
si su archivo principal está ubicado en /Users/feelexit/WebstormProjects/learnnode/node_modules/index.js
entonces express debe ubicarse en /Users/feelexit/WebstormProjects/learnnode/node_modules/node_modules
ya que el nodo siempre busca módulos en ./node_modules
(y su carpeta interna) cuando la ruta no comience con ./
o /
( más información aquí )
Creo que te olvidaste tu archivo principal en la carpeta del módulo
npm ERR! Error: ENOENT, open ''/Users/feelexit/package.json''
Esto sucede debido a permisos perdidos o archivos no vinculados mientras npm estaba funcionando.
Lo que significa que la ejecución de npm
ya que este usuario no tiene suficientes derechos para leer / escribir desde un archivo, en este caso package.json.
intente agregar sudo
antes del comando completo; debería resolverse.
$ sudo npm install -g express
$ Password:*******
La contraseña sería tu contraseña de administrador de tu mac.
-g
flag instalará este módulo (express) en el contexto global del nodo, lo que significa que el nodo reconocerá / deberá reconocer express
módulo express
desde cualquier archivo js sin tener que proporcionar una ruta completa al módulo en uso.
¡¡Espero que esto ayude!!
npm install --save express Esto funcionó para mí, solo ejecuta la instalación de express.js otra vez
D:/learn/Node.js/node app.js
module.js:549
throw err;
^
Error: Cannot find module ''body-parser''
at Function.Module._resolveFilename (module.js:547:15)
at Function.Module._load (module.js:474:25)
at Module.require (module.js:596:17)
at require (internal/module.js:11:18)
A veces, la versión no coincide con el paquete. Json Resolvió el problema revisando el paquete.json y luego usó los siguientes comandos: npm install [email protected] resolvió para mí.