7

我正在尝试在我的公司系统上使用 Next.js,但是每当我运行“npm run build”时,构建都会失败并显示以下消息:Error: Cannot find module 'sharp'

我尝试安装Sharp,但出现此错误:

info sharp Downloading https://github.com/lovell/sharp-libvips/releases/download/v8.10.5/libvips-8.10.5-win32-x64.tar.br 
ERR! sharp getaddrinfo ENOTFOUND github.com 
info sharp Attempting to build from source via node-gyp but this may fail due to the above error
info sharp Please see https://sharp.pixelplumbing.com/install for required dependencies

这可能是因为出于安全原因,我的系统终端上阻止了 github URL。有没有办法在不从 github 获取的情况下安装Sharp?我可以在浏览器上访问 GitHub,所以如果从那里下载文件然后以某种方式安装它,我可以做到这一点。

操作系统:Windows 10

4

3 回答 3

25

更新NextJSv10.0.8修复了这个问题!如果您遇到上述错误:升级到 10.0.8(或更高版本)。

sharpNextJS 引入的必需依赖项10.0.5破坏了依赖于底层 libvips 的构建,这在各种 Linux 发行版中不存在。他们正在努力使依赖项成为可选。相关公关在这里这里。相关问题在这里。这可能比尝试在您的机器上安装或编译 libvips 更容易(我根本无法让它在我的基于 Amazon EC2 ARM 的机器上工作)。您可以同时降级到 NextJS 10.0.3。我想他们会很快解决的。

于 2021-02-05T15:17:48.983 回答
7

我有同样的错误。这发生在我身上,因为我有 Apple M1 Mac。我解决了安装 Homebrew 的错误,之后,我必须使用Brew install vips. 然后,在我的项目中npm install sharp,最后,我运行npm run build并且它对我来说工作得很好。我希望这个对你有用!

于 2021-01-29T13:00:41.043 回答
0

我在mac m1上遇到了同样的问题。我将节点版本降级到 14,现在它可以工作了

于 2021-06-02T15:28:11.640 回答