Sqlite3打包后无法运行,报Cannot find module sqlite3

Published on
40
删除node_modules,重新运行npm i

运行npm install出现vs未找到问题
vs2015_构建工具

  1. 使用vs_installer下载安装C++ 桌面开发组件

  2. 在右侧列表中选定windows sdk,注意版本,该文编写时安装sdk版本为10.0.20348.0,版本不匹配时,会存在找不到SDK的情况
    相关issues - Error MSB8036 The Windows SDK version 10.0.22621.0 was not found (Win10)

  3. 继续npm i后可能出现以下报错

    ModuleNotFoundError: No module named 'distutils'
    
  4. 执行pip install setuptools后即可,注意python路径

更新electron-builder.yml文件
appId: com.electron.app
productName: demo
# 第一种写法,这种写法会将sqlite库下的所有文件全部拷贝
asarUnpack:
  - node_modules/sqlite3

# 第二种写法,仅移动需要的文件,sqlite3工作仅需要lib、package.json及打包后的node_sqlite3.node
win:
	target:
		# 其他配置....
	extraFiles:
	    - from: ./node_modules/sqlite3
	      to: ./resources/app.asar.unpacked/node_modules/sqlite3
	      filter:
	        - lib
	        - package.json
	        - build/Release/node_sqlite3.node


Prev Post [electron] ipc封装demo
Next Post Electron终端中文乱码解决方案