AEM新建Spacer组件部署后未在组件列表及模板编辑器中显示
排查解决步骤
- 优先检查模板的组件允许策略:进入对应页面绑定的可编辑模板,打开页面根容器的配置策略,在「允许的组件」列表中确认已勾选
My Project - Content组件组,或单独添加了Spacer组件。这是这类问题最常见的诱因,AEM默认只会展示模板策略中允许的组件,未配置的组件即使部署成功也不会出现在组件面板。 - 验证组件组配置正确性:你可以临时修改
spacer/.content.xml中的componentGroup属性值为General,重新部署后查看通用组件组中是否出现Spacer组件。如果能显示,说明原组件组要么存在拼写错误,要么没有被模板策略加入允许列表。 - 检查项目Bundle运行状态:部署成功仅代表包上传完成,不代表代码正常加载。访问AEM系统控制台
/system/console/bundles,搜索你的项目ui.apps对应的Bundle,确认状态为Active,不存在依赖缺失问题。 - 清理各类缓存验证:
- 清空浏览器缓存,或使用无痕模式打开页面编辑器
- 进入CRXDE右键点击
/apps/my_project/components/spacer节点,选择刷新 - 访问
/system/console/slingjsp清理所有编译的JSP缓存,避免旧缓存影响组件加载
- 确认组件无隐藏配置:检查
spacer/.content.xml中是否存在cq:hideFromList="{Boolean}true"属性,该属性会强制组件不在面板中展示,你当前贴出的配置中没有该属性,但可以再核对本地代码是否误加。 - 兜底测试组件可用性:在CRX中找到任意测试页面的jcr:content节点,手动新增一个子节点,设置
sling:resourceType="my_project/components/spacer",保存后回到页面编辑器查看是否能正常渲染该组件。如果可以正常渲染,完全排除组件本身的代码问题,问题100%出在模板允许策略配置上。
内容的提问来源于stack exchange,提问作者Augusto
相关产品推荐
相关产品推荐

