项目没有使用canvas,闪退的问题是因为这个,但不清楚为什么会出现问题。
具体情况:
打开exe会闪退,发现没有启动服务,在cmd中打开该exe,发现有一条报错,大致意思是某个模块的缺失:
pkg/prelude/bootstrap.js:1872
throw error;
^
Error: The specified module could not be found.
C:\Users\Teacher\AppData\Local\Temp\pkg\7a51bbe28e903c3513548c3434dbd8168f3ce5b93518b3c3837d49ca564ee7b1\canvas\build\Release\canvas.node
at process.dlopen (pkg/prelude/bootstrap.js:2251:28)
at Module._extensions..node (node:internal/modules/cjs/loader:1196:18)
at Module.load (node:internal/modules/cjs/loader:988:32)
at Module._load (node:internal/modules/cjs/loader:834:12)
at Module.require (node:internal/modules/cjs/loader:1012:19)
at Module.require (pkg/prelude/bootstrap.js:1851:31)
at require (node:internal/modules/cjs/helpers:102:18)
at Object.<anonymous> (C:\snapshot\逆向\node_modules\canvas\lib\bindings.js:3:18)
at Module._compile (pkg/prelude/bootstrap.js:1926:22)
at Module._extensions..js (node:internal/modules/cjs/loader:1166:10) {
code: 'ERR_DLOPEN_FAILED'
}
Node.js v18.5.0
找到该文件夹,.......\canvas\build\Release,发现里面只有一个canvas.node文件,在项目的node_modules里面找到对应的文件 => node_modules\canvas\build\Release,全选,黏贴在.......\canvas\build\Release里面,再打开exe即可。