构建错误参考
每个构建错误代码及其根本原因和修复方法:配置、MDX 语法、OpenAPI、超时和资源问题。
使用 Ctrl/Cmd+F 查找错误代码,或按类别浏览:配置、MDX、OpenAPI、超时和资源。
配置错误
INVALID_DOCS_JSON
消息: "Invalid docs.json configuration"
原因: 你的 docs.json 文件存在语法错误或无效值。
修复:
- 在本地运行
jamdesk validate查看详细错误 - 检查是否缺少逗号、括号或引号
- 确认所有值都符合预期架构
MISSING_PAGE
消息: "Page 'path/to/page' referenced in navigation but file not found"
原因: docs.json 导航中列出的页面不存在。
修复:
- 检查文件是否存在于指定路径
- 确认
docs.json中的路径与实际文件名一致(不含.mdx) - 检查大小写。路径区分大小写
INVALID_FRONTMATTER
消息: "Invalid frontmatter in 'path/to/page'"
原因: MDX 文件顶部的 YAML frontmatter 格式错误。
修复:
- 确保 frontmatter 以
---开始和结束 - 检查 YAML 语法是否有效(缺少冒号、缩进错误)
- 包含特殊字符的字符串请加引号
MDX 错误
MDX_SYNTAX_ERROR
消息: "MDX compilation failed"
原因: 内容中存在无效的 MDX 或 JSX 语法。
修复:
- 确保所有 JSX 标签都已正确闭合(
<Card>...</Card>) - 检查属性语法是否正确(使用
title="value",而非title=value) - 在普通文本中转义花括号:使用
\{代替{
COMPONENT_NOT_FOUND
消息: "Unknown component 'ComponentName'"
原因: 使用了 Jamdesk 中不存在的组件。
修复:
- 查看组件参考以确认正确的名称
- 组件名称区分大小写:使用
<Card>而非<card> - 确认你没有导入自定义组件(不受支持)
INVALID_PROPS
消息: "Invalid props for component 'ComponentName'"
原因: 组件接收了它不接受的属性。
修复:
- 查看组件文档以确认有效属性
- 删除任何不受支持的属性
- 在组件文档中检查属性的预期类型(例如,
cols期望数字而非字符串)
OpenAPI 错误
OPENAPI_PARSE_ERROR
消息: "Failed to parse OpenAPI specification"
原因: 你的 OpenAPI 规范文件语法或结构无效。
修复:
- 运行
jamdesk openapi-check在本地进行验证 - 使用 Swagger Editor 等 OpenAPI 验证工具
- 检查 JSON 或 YAML 语法是否有效
OPENAPI_REFERENCE_ERROR
消息: "Unresolved reference in OpenAPI spec"
原因: OpenAPI 规范中的 $ref 指向了不存在的定义。
修复:
- 验证所有
$ref路径是否正确 - 检查引用的架构是否存在于
components/schemas中 - 如果
$ref指向外部文件或 URL,请确认该文件已包含在项目中且 URL 可访问
构建超时
BUILD_TIMEOUT
消息: "Build exceeded maximum time limit"
原因: 构建耗时超过允许的时间(通常为 5 分钟)。
修复:
- 优化大图片(压缩或调整尺寸)
- 将非常大的页面拆分为较小的页面
- 如果页面数量极多,请减少页面数量
- 如果问题仍然存在,请联系支持团队
资源错误
ASSET_NOT_FOUND
消息: "Asset 'path/to/asset' not found"
原因: 文档中引用的图片或文件不存在。
修复:
- 验证文件是否存在于指定路径
- 检查路径是否相对于你的文档目录
- 文件名大小写必须完全匹配。路径区分大小写
ASSET_TOO_LARGE
消息: "Asset exceeds maximum file size"
原因: 图片或文件超过了 10MB 的限制。
修复:
- 使用 TinyPNG 或 ImageOptim 等工具压缩图片
- 使用合适的格式(照片用 WebP,图标用 SVG)
- 将非常大的文件托管在外部
获取帮助
如果你无法解决错误:
