当我尝试将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
我看着the previous question about this issue,但似乎无法工作。
我在package.json上粘贴了JSONLine,得到了Valid JSON
。
我似乎无法找出问题所在。任何帮助将不胜感激。
答案 0 :(得分:1)
确保所有空目录都进入存储库。可能是由于您的存储库中缺少目录而缺少路径。
gatsby-config.js
中的示例插件
{
resolve: `gatsby-source-filesystem`,
options: {
path: `${__dirname}/src/img`,
name: `images`,
},
}
一个常见的错误是将src/img
添加到本地文件系统,但是忘记将其提交到存储库中,直到获得图像为止。
答案 1 :(得分:1)
tldr;将.gitkeep
文件添加到您的src/images
文件夹(如果为空)。
我遇到了同样的问题。在本地构建可以正常工作,但是由于未知原因,部署到Netlify失败。
结果是,发生问题是因为我从src/images
中删除了占位符Gatsby图像。
当我删除图像时,文件夹为空。 Git会忽略空文件夹,因此,下次我推送到远程存储库时,src/images
文件夹已删除。
但是我的gatsby-config
文件引用了src/images
。当我在本地运行build
时,该文件夹仍然存在,但是在Netlify尝试部署的远程版本中却没有。
无论如何,将.gitkeep
文件添加到src/images
目录可以解决此问题。 .gitkeep
告诉Git保留目录(即使它是空的),这意味着Netlify并未尝试访问不存在的目录。
答案 2 :(得分:-1)
我已经运行npm run build
,而且我很确定我所有的空目录都将进入存储库。
我最终还是解决了这个问题-因为我很早就开始安装该应用程序-就是要重新开始;
New site from Git
。git push origin master
或git push origin
github
,然后它会自动将更改更新到我的Netlify网站。在部署之前构建整个应用程序之前,不知道错误发生在何处!
这种渐进的,连续的部署实践使我能够立即了解导致部署错误的原因。
不幸的是,我实际上并未发现上述错误的原因-从未出现过,因为我做了连续部署,而是做了很多事才部署了它。