Я новичок в Node.js, постараюсь научиться использовать экспресс для создания своего первого веб-приложения. Я застрял на своем самом первом примере кода, и мне нужна помощь, чтобы запустить его. Прежде чем опубликовать этот вопрос, я провел поиск по переполнению стека, нашел несколько похожих вопросов, но все еще не смог это исправить.
Ошибка: не удается найти модуль экспресс
Я использую mac os 10.8.2 . У меня установлен Node.js с использованием nvm
.
node.js: 0.8.20 путь к узлу: /Users/feelexit/nvm/v0.8.20/bin/node путь для выражения: / Users / feelexit / nvm / node_modules / express
вот мой пример кода: этот файл находится по адресу:
/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);
когда я пытаюсь запустить эту команду node index.js
Я получаю следующее сообщение об ошибке, помогите мне исправить это.
Спасибо.
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$
Обновите, чтобы ответить на вопрос Чови:
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
файл. Это поможет в устранении проблемы.Ответы:
Это говорит
У вас установлен экспресс? Если нет, запустите это.
И снова запустите вашу программу.
источник
npm install express
показывает эту ошибкуnpm ERR! Error: UNKNOWN, symlink '../express/bin/express'
. Кажется, это более глубокая проблема.npm link
воссоздать соответствующую связь ...process manager
. Сам по себе он не перезапустился.После того, как вы выразите в своем терминале, выполните
Чтобы установить все зависимости.
Затем вы можете создать приложение узла для запуска сервера.
источник
Проверьте, установлен ли у вас
express
модуль. Если нет, используйте эту команду:и если ваш
node_modules
каталог находится в другом месте, установитеNODE_PATH
переменную envirnment:источник
CTRL+C / CTRL+V
npm install
ответы: вы действительно думаете, что кто-то попытается запустить что-то, не проверив, установлено ли оно сначала? Серьезно ...источник
npm install из каталога вашего приложения устранит проблему, поскольку установит все необходимое
источник
Копаем здесь старую ветку, НО у меня была такая же ошибка, и я решил, перейдя в каталог, в котором находится мой NodeApp, и запустил
npm install -d
источник
-d
- это отладка для npm,-D
это зависимости разработчика.Если вы не установите Node_PATH , единственный другой вариант - установить Express в каталог приложения, например
npm install express --save
. Возможно, Express уже установлен, ноnode
по какой-то причине не может его найтиисточник
Ваш экспресс-модуль расположен в другом каталоге, чем ваш проект. Вероятно, это проблема, поскольку вы пытаетесь сделать
require()
это локально. Попробуйте переместить свой экспресс-модуль из / Users / feelexit / nvm / node_modules / express в / Users / feelexit / WebstormProjects / Learnnode / node_modules / express . Эта информация может дать вам более подробную информацию о файловых структурах node_module.источник
если ваш главный файл расположен в,
/Users/feelexit/WebstormProjects/learnnode/node_modules/index.js
тогда экспресс должен быть расположен в,/Users/feelexit/WebstormProjects/learnnode/node_modules/node_modules
поскольку node всегда ищет модули./node_modules
(и его внутреннюю папку), когда путь не начинается с./
или/
( подробнее здесь )Я думаю, вы пропустили размещение своего основного файла в папке модуля
источник
для этого сценария запустите команду npm install express, используя командную строку для соответствующей папки, в которой вы хотите запустить программу. Пример Я хочу запустить программу экспресс-модуля server.js в F: \ nodeSample. Так что запустите "npm install express" в этой конкретной папке, а затем запустите server.js
источник
Запустите
npm install express body-parser cookie-parser multer --save
команду в том же каталоге, что и файл nodejs исходного кода, чтобы решить эту проблему. P / s: проверьте свой каталог после выполнения команды, чтобы понять больше!источник
В редких случаях кеш npm может быть поврежден. Для меня сработало:
Обычно диспетчер пакетов обнаруживает повреждение и выполняет повторную загрузку самостоятельно, поэтому обычно в этом нет необходимости. Однако в моем случае Windows 10 несколько раз давала сбой, и я подозреваю, что это могло произойти во время операции выборки. Надеюсь, это кому-то поможет!
Дополнительная информация: https://docs.npmjs.com/cli/cache
источник
Я столкнулся с аналогичной проблемой, и в конце концов это было связано с некоторыми старыми зависимостями, которые испортили мой сервер Heroku.
В папке моего проекта я запустил:
Я надеюсь, что это помогает
источник
npm ERR! Error: ENOENT, open '/Users/feelexit/package.json'
Это происходит из-за отсутствия разрешений или несвязанных файлов во время работы npm.
Это означает, что выполнение
npm
от имени этого пользователя недостаточно прав для чтения / записи из файла, в данном случае package.json.попробуйте добавить
sudo
перед всей командой - она должна разрешиться.$ sudo npm install -g express
$ Password:*******
Пароль будет вашим паролем администратора вашего Mac.
-g
flag установит этот модуль (экспресс) в глобальном контексте узла - это означает, что узел будет / должен распознаватьexpress
модуль из любого файла js без необходимости указывать полный путь к используемому модулю.Надеюсь это поможет!!
источник
У меня такая же проблема. Моя проблема заключалась в том, что я должен перейти в каталог проекта Node.js в командной строке перед установкой Express.
источник
Я предполагаю, что это курсовая работа из курса веб-разработки Кольта Стила ... Я искал тот же ответ, почему я тоже получил эту ошибку ... Кольт этого не говорит, но вы берете папку node_module и перемещаете в новую папку, в которой вы работаете ... это сработало для меня.
источник
Иногда версия не совпадает с package.json. Устранена проблема, проверив package.json, затем используйте следующие команды: npm install body-parser@1.13.2 это решено для меня.
источник
Ты пробовала
Если вы специально ищете просто экспресс
источник