当前位置: 首页 > 面试题库 >

node.js找不到模块'mongodb'

羊舌涵涤
2023-03-14
问题内容

我正在经历我的第一个node.js项目。我已经安装了mongodb,有一个server.js文件,当我尝试运行它时,出现此错误

module.js:340
    throw err;
         ^
Error: Cannot find module 'mongodb'
    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)

我很确定我已经安装了mongodb,我是来自C#Windows背景的UNIX新手,但是我认为这是未正确配置的路径吗?


问题答案:

您收到的错误表明MongoDB的NPM软件包未正确安装。

此处的解决方法取决于您计划如何利用NPM。NPM软件包管理器的操作具有两种不同的操作模式:本地和全局。

第一种( 也是默认的 )模式是“本地”。

如果转到文件夹,server.js将看到一个名为的子文件夹node_modules。在该文件夹下将是一个mongodb文件夹。如果该文件夹不存在,则该mongodb模块未安装在该路径上。

若要更正此问题,cd请对该文件夹输入npm install mongodb。完成该过程后,您应该具有node_modules/mongodb可用的文件夹。

您还可以使用全局安装MongoDB软件包npm install -g mongodb。如果您使用大量的node.js命令行,这将很有用,但如果要部署整个程序,则将没有太大用处。

旁注
:周围有一个不断发展的标准package.json。这package.json是包括给定模块的所有依赖项的标准化方法。这使您可以在项目/程序包的根目录下运行npm update或运行npm install,并有效地“拉入”所有依赖项。这极大地简化了部署过程以及保持依存关系在线的过程。



 类似资料:
  • 问题内容: 我安装了request模块,并收到错误消息: 我已经阅读了有关此错误的所有文章,并了解这是因为未全局找到模块请求,但是我已经尝试了2条建议 npm安装请求-g 应该把它安装在/ usr / loca / bin吗?因为我在那里看不到。 和 sudo npm链接 / usr / local / lib / node_modules / request-> / Users / soulso

  • 问题内容: 我有以下目录结构: 我尝试在从server.js导出的app.js中调用函数,我这样做: 但是得到错误: 我如何正确包含它? 谢谢。 问题答案: 该路径必须相对于您当前所在的文件。 用

  • 问题内容: 我写了我的第一个node.js应用程序,但是找不到快速库: 但是express已安装(带有密钥): 一些信息: 我怎么解决这个问题?( 必须 安装时不带吗?) 问题答案: 您需要在本地将Express安装到应用程序(文件夹)的上下文中: 原因是应用程序总是在其本地上下文中查找任何依赖项。全局安装仅用于设置系统范围内的可用二进制文件,例如单元测试运行程序或引导程序或类似的东西。 使用Ex

  • 我已经在Ubuntu11.10x64上通过源代码编译安装了最新的node.js(0.8.15)。

  • 问题内容: 我最近在计算机上安装了cx_Oracle模块,以连接到远程Oracle数据库服务器。(我身边没有Oracle客户端)。 Python:2.7 x86版 Oracle:版本11.1.X x64 Cx_Oracle:版本5.1.2-11g.win32-py2.7 然后,每次我运行脚本时,脚本都会失败并显示以下消息: ImportError:DLL加载失败:找不到指定的模块。 我想知道是否我