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

使用Jakarta XML 3.0+依赖创建XML文件时出现NoClassDefFoundError错误

你遇到的java.lang.NoClassDefFoundError: jakarta.activation.DataSource错误是因为Jakarta XML Binding 3.0及以上版本已将Activation组件从JAXB主包中拆分,不再作为传递依赖自动引入,需要手动添加对应依赖。

解决方案

在你的pom.xml中新增匹配当前JAXB版本的Jakarta Activation依赖即可,修改后的完整依赖配置如下:

<!-- JAXB API -->
<dependency>
    <groupId>jakarta.xml.bind</groupId>
    <artifactId>jakarta.xml.bind-api</artifactId>
    <version>3.0.1</version>
</dependency>

<!-- JAXB RI, Jakarta XML Binding -->
<dependency>
    <groupId>com.sun.xml.bind</groupId>
    <artifactId>jaxb-impl</artifactId>
    <version>3.0.1</version>
    <scope>runtime</scope>
</dependency>

<!-- 新增:Jakarta Activation API -->
<dependency>
    <groupId>jakarta.activation</groupId>
    <artifactId>jakarta.activation-api</artifactId>
    <version>2.0.1</version>
</dependency>

<!-- 可选:如果仅添加API后仍报错,补充运行时实现 -->
<dependency>
    <groupId>com.sun.activation</groupId>
    <artifactId>jakarta.activation</artifactId>
    <version>2.0.1</version>
    <scope>runtime</scope>
</dependency>

注意事项

  • 请彻底移除项目中残留的javax.xml.bind、javax.activation系列旧依赖,避免不同版本的类冲突
  • 如果后续升级JAXB到4.x版本,需要同步将Jakarta Activation的版本升级到2.1.x及以上匹配

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.14 15:54:10