AEM 6.5 SP5升级至SP12后启动报NoClassDefFoundError错误求助
解决AEM 6.5 SP5升级至SP12后的
NoClassDefFoundError问题 针对你遇到的java.lang.NoClassDefFoundError: org/apache/jackrabbit/oak/spi/security/authentication/AbstractLoginModule错误,可按以下步骤排查修复:
检查自定义登录模块依赖
该类在AEM 6.5 SP12对应的Oak版本中已被移除或路径变更。如果项目中有自定义LoginModule继承了这个类,需修改代码适配新的Oak安全API(例如改用AbstractLoginModuleWrapper),重新编译后部署到AEM。清理服务器缓存与旧Bundle
停止AEM服务,删除以下目录的全部内容:crx-quickstart/launchpad/felixcrx-quickstart/tempcrx-quickstart/work
重启服务器,让系统重新加载正确的依赖Bundle。
验证升级包完整性与升级流程
确认AEM 6.5 SP12升级包完整无损坏,重新下载官方包后严格按照Adobe升级步骤执行:先安装SP12,再安装对应版本的Cumulative Fix Pack(CFP),确保升级过程无中断或报错。检查Oak安全Bundle状态
若能访问AEM的OSGi控制台(/system/console/bundles),搜索org.apache.jackrabbit.oak.security相关Bundle,确认所有Bundle均处于Active状态。若有未启动的Bundle,查看启动日志中的具体错误并修复依赖问题。更新OSGi配置
检查是否有自定义OSGi配置(如登录模块配置)引用了该失效类,需将配置中的类路径替换为新的实现类。
内容的提问来源于stack exchange,提问作者Thilina Dinith Fonseka
相关产品推荐
相关产品推荐

