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

添加Azure Spring AD依赖触发OpenTelemetry相关NoClassDefFoundError求助

问题原因分析

这个错误的核心是依赖版本不兼容,具体拆解如下:

  • spring-cloud-azure-starter-active-directory:4.3.0 内部依赖的OpenTelemetry版本高于你当前使用的1.19.0。io.opentelemetry.javaagent.instrumentation.internal.classloader.BootDelegationInstrumentation$Holder 是OpenTelemetry高版本才新增的Java Agent内部类,你的1.19.0版本中不存在这个类,因此运行时触发NoClassDefFoundError。
  • Spring Cloud Azure的版本与Spring Boot版本存在强绑定关系,4.3.0版本的Azure starter依赖的OpenTelemetry版本,需要配合特定版本的Spring Boot才能正常工作。你提到升级OpenTelemetry需更换Spring Boot版本,正是因为当前Spring Boot版本和高版本OpenTelemetry不兼容,而Azure starter又强制引入了高版本OTel,形成依赖链冲突。
  • 类加载层面,Tomcat的WebappClassLoader在初始化MetricsProperties Bean时,会通过JavaBeans Introspector解析类信息,此时会尝试加载这个缺失的OTel内部类,最终抛出类找不到的异常。

内容的提问来源于stack exchange,提问作者Guts

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.19 14:15:31