Я впервые возился с Node.js и решил создать простое приложение с использованием Express.Я следовал инструкциям github в пустом каталоге, например:
npm install -g express
express
npm install -d
node app.js
При переходе на localhost:3000
я получаю следующую ошибку:
Express
500 Error: Cannot find module './lib/jade'
at Function._resolveFilename (module.js:332:11)
at Function._load (module.js:279:25)
at Module.require (module.js:354:17)
at require (module.js:370:17)
at Object. (C:\dev\gravity_kata\node_modules\jade\index.js:4:5)
at Module._compile (module.js:441:26)
at Object..js (module.js:459:10)
at Module.load (module.js:348:31)
at Function._load (module.js:308:12)
at Module.require (module.js:354:17)
Когдаглядя под node_modules\jade\lib
Я вижу все библиотечные файлы Джейд, но нет папки jade
.Поэтому я создал папку в lib с именем jade и переместил туда файлы библиотеки, и теперь мое приложение по умолчанию работает.
Теперь, поскольку у меня почти нет опыта работы с Node.js и Express, я почти уверен, что сделалчто-то не так.Кто-нибудь знает, что здесь происходит?
Редактировать:
Я углубился в код Jade.Для файла Jade index.js требуется lib\jade
, а в папке lib не было файла jade.js
.Ну, это проблема, но почему отсутствует файл jade.js?При извлечении Jade source из npm в каталоге lib находится файл jade.js.Я скопировал папку lib из загруженного исходного кода в модуль Jade для моего проекта, и теперь он работает нормально.
Так что по какой-то причине npm не вытаскивает файл jade.js.Версия в файле packages.json
соответствует источнику, который я выбрал, 0.21.0
.У кого-нибудь есть идея, почему это произошло?