Office插件清单Requirements配置问题及O365发布报错咨询
Office Web插件清单Requirements段问题解析
背景
我司长期提供旧版VSTO风格插件,近期基于Excel JavaScript API开发了全新Web插件,计划通过Office插件商店分发。内部通过O365 Admin流程发布为管理员托管插件一切正常,但公开分发时遇到清单Requirements段的相关问题:
- 当前Requirements段位于Hosts与DefaultSettings之间,是否需要移至VersionOverrides段?
- 上传至O365 Admin控制台时,除SharedRuntime外添加其他API集要求均被拒绝,提示“无Office产品支持”,原因是什么?
npm run validate校验在移除DialogOrigin后通过,但O365控制台仍报错,为何两者校验结果存在差异?
当前Requirements配置代码段
<Hosts> <Host Name="Workbook" /> </Hosts> <Requirements> <Sets DefaultMinVersion="1.1"> <Set Name="SharedRuntime" MinVersion="1.1" /> <Set Name="ExcelApi" MinVersion="1.17" /> <Set Name="RibbonApi" MinVersion="1.2" /> <Set Name="DialogApi" MinVersion="1.2" /> <Set Name="OpenBrowserWindowApi" MinVersion="1.1" /> <Set Name="CustomFunctionsRuntime" MinVersion="1.3" /> </Sets> </Requirements> <DefaultSettings>
问题解答
1. Requirements段的位置是否需要调整?
不需要移至VersionOverrides段。根据Office插件清单的官方规范,Requirements段的正确位置就是在Hosts之后、DefaultSettings之前,你当前的配置位置完全符合标准。VersionOverrides主要用于定义不同Office版本的功能适配逻辑,和基础的Requirements配置无关。
2. 除SharedRuntime外其他要求被拒的原因
核心原因是O365 Admin控制台针对公开分发插件的兼容性校验逻辑远严于管理员托管插件:
- 你指定的部分API集(如ExcelApi 1.17、RibbonApi 1.2等)的最低版本可能未被Office商店要求的全量Office产品/版本普遍支持,公开分发要求插件能兼容更广泛的Office环境;
- 管理员托管插件的校验仅针对内部部署场景,允许适配特定Office版本,但公开分发必须满足Office商店的通用兼容性标准。
建议核对每个API集的最低支持版本对应的Office版本,将MinVersion调整为Office商店认可的通用兼容版本,或只保留插件运行必需的API集。
3. npm run validate与O365控制台校验结果差异的原因
两者的校验依据和范围完全不同:
npm run validate依赖的是本地清单校验工具(office-addin-manifest),仅检查清单的语法合规性、基础API集定义的格式正确性,不会对接Office商店的实时兼容性数据库;- O365控制台的校验会结合当前Office商店的官方兼容规则,包括API集的实际支持范围、公开分发的特殊限制(部分API集不允许在公开插件中使用),因此会出现本地校验通过但控制台报错的情况。
必须以O365控制台的校验结果为准,根据具体报错提示进一步调整清单配置。
内容的提问来源于stack exchange,提问作者Mike Wright
相关产品推荐
相关产品推荐

