【发布时间】:2017-12-05 01:58:26
【问题描述】:
我正在使用节点 8.1.2 和猫鼬 4.11。在启动应用程序时,我收到以下错误:
D:\express_learn\LAM>node app.js
module.js:487
throw err;
^
Error: Cannot find module 'mongodb/node_modules/bson'
at Function.Module._resolveFilename (module.js:485:15)
at Function.Module._load (module.js:437:25)
at Module.require (module.js:513:17)
at require (internal/module.js:11:18)
at Object.<anonymous> (D:\express_learn\LAM\node_modules\mongoose\lib\drivers\node-mongodb-native\objectid.js:8:16)
at Module._compile (module.js:569:30)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:503:32)
at tryModuleLoad (module.js:466:12)
at Function.Module._load (module.js:458:3)
D:\express_learn\LAM>
我从here尝试了以下解决方案
npm install node-gyp -g
npm cache clean
rm -rf node_modules
npm install
但仍然出现同样的错误。
这里是package.json
{
"name": "learn-about-me",
"private": true,
"scripts": {
"start": "node app"
},
"dependencies": {
"bcrypt-nodejs": "0.0.3",
"body-parser": "^1.6.5",
"connect-flash": "^0.1.1",
"cookie-parser": "^1.3.2",
"ejs": "^1.0.0",
"express": "^4.15.3",
"express-session": "^1.7.6",
"mongoose": "^4.11.0",
"passport": "^0.2.0",
"passport-local": "^1.0.0"
}
}
【问题讨论】:
-
package.json中有什么内容?运行npm install时是否可能看到任何错误?在这里寻找可能试图将 mongoose 和核心驱动程序作为依赖项以及可能出现在安装过程中的编译错误之间的冲突。再次清理并确保复制任何错误并将它们包含在您的帖子中。请不要截图。 -
用
package.json更新了问题。当我尝试通过node app.js启动应用程序时,我只看到此错误。 -
尝试删除
package-lock.json并再次运行npm install。 -
照 robert 所说的去做,并把它变成
npm install --verbose并复制你在输出中看到的任何错误。 -
@NeilLunn,清除缓存并删除
package-lock.json成功了。谢谢大家