[英]Rocket.Chat build failing with error “Cannot find module '../build/Release/sharp.node' ”
[英]Error: Cannot find module './build/Release/sharp'
我正在尝试使用 Sharp 运行一些 NodeJS 代码,但出现以下错误:
[root@localhost myapp-backend]# node server.js
module.js:340
throw err;
^
Error: Cannot find module './build/Release/sharp'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/root/myapp-backend/node_modules/sharp/index.js:11:13)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:364:17)
at require (module.js:380:17)
at Object.<anonymous> (/root/myapp-backend/server.js:277:13)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:935:3
有任何想法吗?
谢谢你。
事实证明,我使用的 Debian 8.x 发行版不包含 vips,但我没有收到错误消息。 跑步
apt-get install libvips
其次是
npm install sharp
解决了问题,夏普终于安装并工作了。
这可能是由于 Sharp 没有安装。 当我通过 npm 安装它时,没有错误,但是当我进入node_modules/sharp
,三个没有构建文件。
你可以尝试通过做来构建它node-gyp rebuild
但是,在此之前,请确保您已安装 Vips - 这是 Sharp 使用的库。 在 Mac 上你会这样做brew install homebrew/science/vips --with-webp --with-graphicsmagick
构建 Sharp 库后,您应该可以开始使用了。
检查node_modules/sharp
上是否没有 build 文件夹,然后运行:
npm i sharp
它将重新安装并构建锋利。 (为我工作)
对我有用的是更新到最新的 Node 13 而不是 apt-get 默认提供的 Node 8。 回答仅供参考。
我在用于 s3 图像裁剪的 Lambda 函数中遇到了相同的错误。
我安装了如下的sharp模块,我能够裁剪图像。
npm install --platform=linux --arch=x64 sharp
请检查“node_modules/sharp/build/build”文件夹中的“sharp-linux-x64.node”
在我的情况下,为 node.js 的特定目标版本安装Sharp,我使用了以下命令,但在此之前删除现有的node_modules
文件夹或删除rm -rf node_modules/sharp
npm install --arch=x64 --platform=linux --target=16x sharp
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.