![](/img/trans.png)
[英]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.