You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ExpressJS最新版报错:找不到sqlite模块(已安装sqlite3)求助

解决Express项目中"Cannot find module 'sqlite'"报错问题

你的核心问题是:安装了sqlite3模块,但项目里有代码在引用不存在的sqlite模块。你的index.js里没直接写require('sqlite'),但你导入的路由文件(比如./routes/api/services、./routes/api/vehicles等)里肯定存在这个错误引用。

解决方案步骤:

  1. 定位错误引用位置
    在项目根目录执行命令,搜索所有包含require('sqlite')的文件:

    # macOS/Linux
    grep -r "require('sqlite')" ./
    # Windows
    findstr /s "require('sqlite')" .\*
    

    执行后会列出所有写错引用的文件路径。

  2. 修正模块引用
    打开找到的文件,把所有require('sqlite')替换成require('sqlite3'),确保和你实际安装的模块名称一致。

  3. 清理无效依赖(可选)
    如果你之前误安装过sqlite模块,执行以下命令清理:

    npm uninstall sqlite
    

    同时检查package.json,确保只有sqlite3作为依赖,没有多余的sqlite条目。

  4. 重启项目验证
    重新执行npm start,报错应该会消失。

额外排查点:

如果你的项目用了ORM框架(比如Sequelize),要检查数据库配置文件,确认dialect对应的模块是sqlite3,而不是sqlite。例如:

const sequelize = new Sequelize({
  dialect: 'sqlite',
  dialectModule: require('sqlite3'), // 这里要确保引用的是sqlite3
  storage: './database.sqlite'
});

内容的提问来源于stack exchange,提问作者Soulaimane Aflou

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.06 05:07:30