当我尝试将gatsby.js站点部署到Netlify时,我收到以下错误/失败消息:
7:27:09 AM: Error running command: Build script returned non-zero exit code: 1
7:27:09 AM: Failing build: Failed to build site
7:27:09 AM: failed during stage 'building site': Build script returned non-zero exit code: 1
7:27:09 AM: Finished processing build request in 1m9.884654373s
我看了之前关于这个问题的问题,但我似乎无法让我的问题发挥作用。
我把我的package.json粘贴到JSONLine上,得到了Valid JSON
。
我似乎不明白这个问题出在哪里。任何帮助都将不胜感激。
确保所有空目录都进入存储库。您的存储库中可能有一个引用丢失目录的丢失路径。
gatsby-config.js
中的示例插件
{
resolve: `gatsby-source-filesystem`,
options: {
path: `${__dirname}/src/img`,
name: `images`,
},
}
一个常见的错误是将src/img
添加到本地文件系统中,但在获得图像之前忘记将其提交到存储库中。
tldr;如果src/images
文件夹为空,请将.gitkeep
文件添加到该文件夹中。
我也遇到了同样的问题。本地构建工作正常,但由于未知原因,部署到Netlify失败。
事实证明,问题的发生是因为我从src/images
中删除了占位符Gatsby图像。
当我删除这些图像时,文件夹是空的。Git忽略空文件夹,所以下次我推送到远程存储库时,src/images
文件夹被删除了。
但我的gatsby-config
文件引用了src/images
。当我在本地运行build
时,该文件夹仍然存在,但在Netlify试图部署的远程版本中不存在。
无论如何,在src/images
目录中添加一个.gitkeep
文件解决了这个问题。.gitkeep
告诉Git保留目录(即使它是空的(,这意味着Netlify没有试图访问不存在的目录。