Node.js说它不能加载sqlite3模块,但无论如何

我正在使用Visual Studio的新Node.js工具,并包含sqlite3 npm模块 。 当我调用require('sqlite3')会抛出错误:

Error: Cannot find module './binding\Debug\node-v11-win32-ia32\node_sqlite3.node'

奇怪的是,当我忽略错误,并继续运行的代码,一切工作正常…直到我回来的函数; 那么服务器崩溃。

其他人遇到过这个问题吗? 我怀疑它与./binding部分有关,但不知道从哪里开始找出原因。

用这个:-

 npm install sqlite3 --build-from-source 

这对我有用 : https : //www.npmjs.com/package/sqlite3

 npm install https://github.com/mapbox/node-sqlite3/tarball/master 

从: https : //github.com/mapbox/node-sqlite3/wiki/Building-On-Windows

  1. 安装所需的软件:
    1. Python 2.x : https : //www.python.org/downloads/release/python-2711/
    2. Win SDK : http : //www.microsoft.com/en-us/download/details.aspx? displayLang=en & id=8279
    3. Microsoft Visual Studio 2010+ : http : //go.microsoft.com/?linkid= 9816758
  2. build立:
    1. npm install sqlite
    2. npm install
    3. node-gyp configure build

看来这是一个sqlite3 npm包本身的问题。 存在一个lib\binding\Release\文件夹,但不是一个lib\binding\Debug\文件夹。 我刚刚创build了Release文件夹的副本,将其命名为Debug ,并且一切正常。

要跳过search预编译的二进制文件,并从源强制构build,请使用

 npm install --build-from-source