[已解决]“由于 process.env.CI = true,将警告视为错误”

2025-06-07

[已解决]“由于 process.env.CI = true,将警告视为错误”

您的代码部署到 Netlify 是否失败了?日志中是否显示
“由于 process.env.CI = true,将警告视为错误”? 如果是,那么您来对地方了。我会在几秒钟内帮您修复此错误。在向您展示修复方法之前,我们先来看看此错误的根本原因。
错误

这个错误是怎么回事?

从2020 年 6 月 15 日开始, Netlify 开始逐步在构建环境中添加环境变量 CI,其值为 true。这个环境变量是“持续集成 (Continuous Integration)”的缩写,通常在各种 CI 环境中设置,例如 Travis CI 和 Github Actions 等。生态系统已基本同意使用此环境设置来检测构建是在 CI 环境(而非本地开发环境)中执行。

此设置允许许多常用库检测 CI 环境并相应地更改行为。其中一种行为是禁用进度“旋转器”,虽然它在本地开发终端中很有用,但在日志流 CI 环境中运行时渲染效果不佳。

因此,一些库现在会将之前的警告解读为硬错误并停止构建。此举的目的是避免开发者发布可能存在问题的配置,但缺点是,之前成功完成的构建在此更改后开始失败。

修复

如果您的构建在此更改后中断,您可以通过在构建中取消设置 CI 变量来禁用此行为。例如,以下命令将取消设置 NPM 命令的 CI:
CI= npm run build

  • 登录Netlify
  • 选择您的app并点击Site settings
  • 导航至Build & Deploy
  • Continuous Deployment在选择Edit settings
  • 更新Build command至```

CI= npm run build

CI=false npm run build //OP 在下面的评论中提到


If you are using `netlify.toml` to set the build command, update it as such:
Enter fullscreen mode Exit fullscreen mode

...
命令=“CI = npm run build”
...

*Rebuild you deployment
Now you should see `Production: master@c215c12 Published` 😉
Enter fullscreen mode Exit fullscreen mode
文章来源:https://dev.to/kapi1/solved-treating-warnings-as-errors-because-of-process-env-ci-true-bk5
PREV
提升你的技能第 1 部分
NEXT
JS 图解:Promises 回调 Promises 结论 参考