【问题标题】:NextJS on Netlify: Deploy did not succeed; Deploy directory 'out' does not existNetlify 上的 NextJS:部署没有成功;部署目录“out”不存在
【发布时间】:2021-06-22 11:11:04
【问题描述】:

我目前正在开发一个网站并将其托管在 Netlify 上。直到最近的更改,它一直在部署,没有任何问题。但是,我推送了一个更改,突然,我收到了这个错误; Deploy did not succeed: Deploy directory 'out' does not exist。 我知道这里和其他论坛上有很多类似的问题,但我尝试了这些解决方案及其组合,但没有成功。
我查看的来源:

这里是 GitHub 存储库:https://github.com/henrikvtcodes/henrikvt.com-nextjs-old
我尝试过的事情:

  • "export":"next export" 添加到package.json 并将我的构建命令更改为next build && next export
  • "export":"next build && next export" 添加到package.json 并将我的构建命令更改为npm run export
  • 标准npm run build
  • 更多(可以在 GitHub 上的提交历史中看到)

所有这些都失败并出现上述错误代码或退出代码 1。

我不知道该怎么做。标准的npm run build 命令在我的本地系统上也运行得很好。另一条可能有用的信息;我在 Vercel 上测试部署了相同的存储库,并且运行良好(有点符合预期),但出于多种原因,我宁愿使用 Netlify。

【问题讨论】:

  • 您在 Netlify 的部署设置中有什么构建命令?
  • 目前设置为npm run build
  • 尝试将其更改为next build && next export。您需要在 Netlify 上运行导出命令,否则不会创建 out/ 文件夹。
  • 构建失败,退出代码:1。我不确定是否必须导入模块来处理它?
  • Command failed with exit code 1: next build && next export

标签: node.js npm next.js netlify


【解决方案1】:

当你有一个 next.config.js 时,添加 target: serverless 到它。该文件将如下所示:

// next.config.js
module.exports = {
  future: {
    webpack5: true,
  },
  target: 'serverless'
}

然后您可以将netlify.toml 文件添加到项目的根目录,告诉 Netlify 它应该像这样运行构建命令:

// netlify.toml
[build]
  command = "yarn build"

这使我的 Next.js 部署到 Netlify 工作。

【讨论】:

  • 添加目标:“无服务器”对我有用,谢谢。
猜你喜欢
  • 1970-01-01
  • 2021-06-19
  • 2021-11-11
  • 1970-01-01
  • 2019-12-28
  • 1970-01-01
  • 1970-01-01
  • 2019-01-24
  • 1970-01-01
相关资源
最近更新 更多