Gatsby 4 + Netlify

4

由于以下错误,无法在Netlify上运行Gatsby 4:

    4:07:59 PM: success run queries in workers - 158.327s - 621/621 3.92/s
    4:16:57 PM: error UNHANDLED EXCEPTION write EPIPE
    4:16:57 PM: 
    4:16:57 PM: 
    4:16:57 PM:   Error: write EPIPE
    4:16:57 PM:   
    4:16:57 PM:   - child_process:846 ChildProcess.target._send
    4:16:57 PM:     node:internal/child_process:846:20
    4:16:57 PM:   
    4:16:57 PM:   - child_process:719 ChildProcess.target.send
    4:16:57 PM:     node:internal/child_process:719:19
    4:16:57 PM:   
    4:16:57 PM:   - index.js:290 WorkerPool.sendMessage
    4:16:57 PM:     [repo]/[gatsby-worker]/dist/index.js:290:19
    4:16:57 PM:   
    4:16:57 PM:   - worker-messaging.ts:22 
    4:16:57 PM:     [repo]/[gatsby]/src/utils/jobs/worker-messaging.ts:22:22
    4:16:57 PM:   
    4:16:57 PM: 
    4:16:57 PM: not finished Merge worker state - 0.168s

以下是我的 Gatsby 信息:

  System:
    OS: Windows 10 10.0.19042
    CPU: (16) x64 Intel(R) Core(TM) i7-10700 CPU @ 2.90GHz
  Binaries:
    Node: 16.13.0 - C:\Program Files\nodejs\node.EXE
    npm: 8.1.0 - C:\Program Files\nodejs\npm.CMD
  Languages:
    Python: 3.10.0
  Browsers:
    Edge: Spartan (44.19041.1266.0), Chromium (95.0.1020.30)
  npmPackages:
    gatsby: ^4.0.2 => 4.0.2
    gatsby-background-image: ^1.5.3 => 1.5.3
    gatsby-plugin-feed: ^4.0.0 => 4.0.0
    gatsby-plugin-google-tagmanager: ^4.0.0 => 4.0.0
    gatsby-plugin-image: ^2.0.0 => 2.0.0
    gatsby-plugin-manifest: ^4.0.0 => 4.0.0
    gatsby-plugin-nprogress: ^4.0.0 => 4.0.0
    gatsby-plugin-offline: ^5.0.0 => 5.0.0
    gatsby-plugin-react-helmet: ^5.0.0 => 5.0.0
    gatsby-plugin-react-svg: ^3.0.1 => 3.1.0
    gatsby-plugin-remove-fingerprints: ^0.0.2 => 0.0.2
    gatsby-plugin-sass: ^5.0.0 => 5.0.0
    gatsby-plugin-sharp: ^4.0.1 => 4.0.1
    gatsby-plugin-sitemap: ^5.0.0 => 5.0.0
    gatsby-plugin-styled-components: ^5.0.0 => 5.0.0
    gatsby-plugin-svgr-loader: ^0.1.0 => 0.1.0
    gatsby-plugin-web-font-loader: ^1.0.4 => 1.0.4
    gatsby-source-filesystem: ^4.0.0 => 4.0.0
    gatsby-source-wordpress: ^6.0.0 => 6.0.0
    gatsby-transformer-sharp: ^4.0.0 => 4.0.0
  npmGlobalPackages:
    gatsby-cli: 4.0.0

我能够在本地构建,但清除缓存和部署似乎也行不通。有任何想法是哪里出了问题吗?

开始觉得我需要降级到Gatsby v3,直到这个问题被解决。

2个回答

3

我认为这个问题与你的本地环境和Netlify之间的Node版本不匹配有关。这将创建不同的构建依赖项安装,并可能导致一些代码破坏,就像你面临的这个问题一样。

您可以通过多种方式自定义Node版本,但我建议您只运行:

node -v > .nvmrc

这将在你项目的根目录中创建一个带有节点版本(node -v)的.nvmrc文件。当Netlify发现该文件时,会自动设置相应的Node版本。

如果这不能解决问题,我认为你需要降级到版本3或等待补丁...

如果问题仍然存在,你可能需要删除gatsby-plugin-offline插件(如果你没有使用它)。EPIPE问题通常与此插件设置的服务工作者有关。


2
谢谢您的回答。我应该提到我已经通过 .node-version 文件添加了相同的节点版本。不过问题仍然存在。 - Sam

0
有时在Netlify上降级到gatsby nodejs版本会起作用。 前往设置 -> 环境并添加。
NODE_VERSION = 14 or 12

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接