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

使用Next.js部署Sitecore JSS应用时执行jss deploy app -c -d命令报错求助

Next.js部署Sitecore JSS应用时执行jss deploy app -c -d命令报错求助

问题描述

我在使用Next.js结合Sitecore 10.3开发项目时,尝试在PowerShell中执行命令 jss deploy app -c -d 将应用部署到Sitecore,期望能在Sitecore中看到更新内容,但执行过程中出现了模块找不到的错误,完整的终端输出如下:

PS C:\development\next-jss-prj\nextjs> jss deploy app -c -d

JSS is creating a manifest for sitecore-jss-app to ./sitecore/manifest...

Error generating manifest Error: Unable to load manifest require C:\development\next-jss-prj\nextjs\sitecore\definitions\config.js: Error: Cannot find module 'C:\development\next-jss-prj\nextjs\sitecore\definitions\config.js'

Require stack:

- C:\development\next-jss-prj\nextjs\node_modules\@sitecore-jss\sitecore-jss-dev-tools\dist\cjs\manifest\generator\generate.js
- C:\development\next-jss-prj\nextjs\node_modules\@sitecore-jss\sitecore-jss-dev-tools\dist\cjs\manifest\index.js
- C:\development\next-jss-prj\nextjs\node_modules\@sitecore-jss\sitecore-jss-dev-tools\dist\cjs\disconnected-server\create-default-disconnected-server.js
- C:\development\next-jss-prj\nextjs\node_modules\@sitecore-jss\sitecore-jss-dev-tools\dist\cjs\index.js
- C:\development\next-jss-prj\nextjs\node_modules\@sitecore-jss\sitecore-jss-cli\dist\cjs\scripts\clean.js
- C:\development\next-jss-prj\nextjs\node_modules\@sitecore-jss\sitecore-jss-cli\dist\cjs\scripts\index.js
- C:\development\next-jss-prj\nextjs\node_modules\@sitecore-jss\sitecore-jss-cli\dist\cjs\cli.js
- C:\Users\rholenna\AppData\Roaming\npm\node_modules\@sitecore-jss\sitecore-jss-cli\dist\cjs\bin\jss.js

at initRequire (C:\development\next-jss-prj\nextjs\node_modules\@sitecore-jss\sitecore-jss-dev-tools\dist\cjs\manifest\generator\generate.js:92:15)
at C:\development\next-jss-prj\nextjs\node_modules\@sitecore-jss\sitecore-jss-dev-tools\dist\cjs\manifest\generator\generate.js:161:9
at Generator.next (<anonymous>)
at C:\development\next-jss-prj\nextjs\node_modules\@sitecore-jss\sitecore-jss-dev-tools\dist\cjs\manifest\generator\generate.js:31:71
at new Promise (<anonymous>)
at __awaiter (C:\development\next-jss-prj\nextjs\node_modules\@sitecore-jss\sitecore-jss-dev-tools\dist\cjs\manifest\generator\generate.js:27:12)
at generateToVariable (C:\development\next-jss-prj\nextjs\node_modules\@sitecore-jss\sitecore-jss-dev-tools\dist\cjs\manifest\generator\generate.js:160:12)
at C:\development\next-jss-prj\nextjs\node_modules\@sitecore-jss\sitecore-jss-dev-tools\dist\cjs\manifest\generator\generate.js:189:38
at Generator.next (<anonymous>)
at C:\development\next-jss-prj\nextjs\node_modules\@sitecore-jss\sitecore-jss-dev-tools\dist\cjs\manifest\generator\generate.js:31:71
PS C:\development\next-jss-prj\nextjs>

解决方案

从错误日志的核心信息Cannot find module 'C:\development\next-jss-prj\nextjs\sitecore\definitions\config.js'可以看出,问题根源是JSS生成manifest时找不到必需的配置文件config.js,你可以按照以下步骤排查解决:

  • 检查文件是否存在:首先确认你的项目路径C:\development\next-jss-prj\nextjs\sitecore\definitions下是否确实存在config.js文件,可能的原因包括文件被误删除、重命名,或者路径拼写错误(Windows路径不区分大小写,但文件名需完全匹配)。
  • 重新生成配置文件:如果config.js不存在,你可以通过Sitecore JSS的脚手架命令重新生成:
    在项目根目录执行:
    jss scaffold
    
    这个命令会重新生成基础的站点定义文件,包括config.js。你也可以手动创建该文件,基础内容示例如下:
    module.exports = {
      sitecore: {
        siteName: 'sitecore-jss-app',
        apiKey: '{YOUR_API_KEY}',
        layoutServiceHost: 'http://your-sitecore-instance.local'
        // 其他配置项可根据你的项目需求补充
      }
    };
    
  • 验证JSS配置路径:检查项目的package.json或者JSS相关配置文件中,是否自定义了manifest生成的配置文件路径,如果有,确保路径指向正确的文件位置。
  • 清理依赖缓存:有时候node_modules的缓存可能导致依赖加载异常,你可以尝试:
    1. 删除项目根目录的node_modules文件夹和package-lock.json文件
    2. 重新执行npm install安装依赖
    3. 再次尝试部署命令
  • 简化命令测试:先尝试不带参数执行jss deploy app,排除-c(清理部署)和-d(调试模式)参数可能带来的干扰,确认基础部署流程是否正常。

备注:内容来源于stack exchange,提问作者Reshma Holennavar

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.22 10:22:58