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

单仓库部署Next.js SST脚本报错:Cannot find package 'next'

问题原因及排查方向:Next.js + SST 单仓库部署找不到next包

核心原因推测

单仓库环境下,SST构建或打包过程中未正确识别Next.js依赖的位置,导致部署包中缺失next模块。

具体排查步骤

  • 确认SST配置的项目路径
    在sst.config.ts的NextjsSite配置中,确保path参数指向当前apps/website目录(即path: "./"),避免因路径错误导致SST无法找到Next.js项目的依赖配置。示例:

    new NextjsSite(stack, "site", {
      path: "./",
      buildCommand: "npm run build"
    });
    
  • 检查单仓库工作区配置
    如果使用npm/pnpm workspaces,需确保:

    • 根目录package.json的workspaces字段包含apps/website;
    • apps/website/package.json中显式声明next为依赖;
    • 部署前在根目录执行完整的依赖安装命令(npm install/pnpm install),确保依赖被正确安装到根目录或项目本地node_modules。
  • 排查SST打包的依赖排除规则
    检查sst.config.ts中是否存在externals配置误将next排除在外,若有则移除该配置。同时可查看.sst/build目录下的部署产物,确认node_modules中是否包含next包,若缺失则说明构建过程未正确打包依赖。

  • 确认部署命令的执行目录
    必须在apps/website目录下执行sst deploy命令,而非单仓库根目录,避免SST加载错误的项目上下文。

  • 验证本地构建是否正常
    在apps/website目录手动执行npm run build,确认.next文件夹正常生成且无构建错误。若本地构建失败,先修复本地问题再尝试部署。

  • 查看SST调试日志
    执行sst deploy --debug获取详细日志,重点关注构建阶段的依赖安装、打包步骤,定位是否有依赖遗漏或路径错误的提示。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.19 18:22:07