NPM 模块画布是使用 NODE_MODULE_VERSION 88 针对不同的 Node.js 版本编译的
Posted
技术标签:
【中文标题】NPM 模块画布是使用 NODE_MODULE_VERSION 88 针对不同的 Node.js 版本编译的【英文标题】:NPM module canvas was compiled against a different Node.js version using NODE_MODULE_VERSION 88 【发布时间】:2021-04-18 15:21:21 【问题描述】:我正在尝试使用 canvas 的 NPM 版本以及 merge images 的 NPM 模块。但是它的 Canvas 似乎不想加载。每次我需要它并运行脚本时都会出错。
This 的答案似乎没有帮助,因为我尝试了所有解决方案,但它似乎在谈论 bcrypt 和电子。
我正在使用 npm 版本 6.14.10
运行节点 v12.16.3
,而我的 package.json
中的画布版本是 ^2.6.1
我的完整错误信息:
Error: The module '\\?\C:\...\node_modules\canvas\build\Release\canvas.node'
was compiled against a different Node.js version using
NODE_MODULE_VERSION 88. This version of Node.js requires
NODE_MODULE_VERSION 72. Please try re-compiling or re-installing
the module (for instance, using `npm rebuild` or `npm install`).
at Object.Module._extensions..node (internal/modules/cjs/loader.js:1183:18)
at Module.load (internal/modules/cjs/loader.js:977:32)
at Function.Module._load (internal/modules/cjs/loader.js:877:14)
at Module.require (internal/modules/cjs/loader.js:1019:19)
at require (internal/modules/cjs/helpers.js:77:18)
at Object.<anonymous> (C:\...\node_modules\canvas\lib\bindings.js:3:18)
at Module._compile (internal/modules/cjs/loader.js:1133:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1153:10)
at Module.load (internal/modules/cjs/loader.js:977:32)
at Function.Module._load (internal/modules/cjs/loader.js:877:14)
at Module.require (internal/modules/cjs/loader.js:1019:19)
at require (internal/modules/cjs/helpers.js:77:18)
at Object.<anonymous> (C:\...\node_modules\canvas\lib\canvas.js:9:18)
at Module._compile (internal/modules/cjs/loader.js:1133:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1153:10)
at Module.load (internal/modules/cjs/loader.js:977:32)
【问题讨论】:
你试过npm rebuild
或npm install
吗?
你试过在你的系统上编译它吗? -> npmjs.com/package/canvas#compiling
我尝试删除我的package-lock.json
和node-modules
,然后运行npm install
但什么也没有,npm rebuild
似乎失败了?
这能回答你的问题吗? Node - was compiled against a different Node.js version using NODE_MODULE_VERSION 72
【参考方案1】:
在寻找相同的错误并重新安装/删除我的 node_modules 文件夹时遇到了这个问题。但是,使用 npm rebuild canvas --update-binary
对我有用。
我在 this question 的类似错误的不同答案中找到了此解决方案,只是将其更改为适合画布。留下这个以防其他人也遇到这个。
【讨论】:
当您遇到一个您知道已在 SO 上发布的问题时,将其标记为重复,而不是重复答案和链接以上是关于NPM 模块画布是使用 NODE_MODULE_VERSION 88 针对不同的 Node.js 版本编译的的主要内容,如果未能解决你的问题,请参考以下文章
在 elasticbeanstalk 上安装 npm canvas - npm 安装错误