You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Netlify CLI部署Next.js单仓应用失败:无法识别nextjs runtime插件

解决Netlify CLI部署Monorepo Next.js应用时未加载Next.js Runtime的问题

问题根源

使用netlify deploy --dir=...直接部署预构建的.next目录时,会跳过Netlify的完整构建流程,导致@netlify/plugin-nextjs无法执行。该插件负责生成Next.js运行时必需的边缘函数、路由规则和适配逻辑,缺失这些配置就会出现「Not Found」错误。而Netlify UI部署能正常运行,是因为UI触发了完整构建流程,插件会在构建阶段被正确加载执行。

解决方案

方案1:让Netlify CLI处理完整构建流程(推荐)

  1. 将netlify.toml移到子应用目录(例如apps/webbsite/netlify.toml),内容修改为:
    [[plugins]]
    package = "@netlify/plugin-nextjs"
    
    [build]
    command = "yarn build:webbsite"
    publish = ".next"
    
  2. 在GitHub Actions工作流中,切换到子应用目录并执行带--build参数的部署命令:
    cd apps/webbsite
    netlify deploy --context=deploy-preview --site=$NETLIFY_WEBBSITE_ID --build
    
    此命令会让Netlify先执行构建命令生成项目产物,同时加载插件生成运行时所需配置,最后完成部署。

方案2:指定子应用的配置文件(根目录操作)

若需要在monorepo根目录执行部署,可通过--config参数指定子应用的netlify.toml路径:

netlify deploy --context=deploy-preview --site=$NETLIFY_WEBBSITE_ID --build --config=apps/webbsite/netlify.toml

验证方法

部署完成后,前往Netlify后台查看部署日志,确认存在@netlify/plugin-nextjs的执行记录(例如显示"Installing Next.js runtime"类信息),即可确认插件已正常加载。

内容的提问来源于stack exchange,提问作者dutterbutter

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 09:55:15