JavaDoc生成报错:javax.xml.bind包不存在求助
解决Eclipse生成JavaDoc时
javax.xml.bind包不存在的问题 这个问题我之前帮同事处理过好几次,核心原因是Java 9及以后的版本中,javax.xml.bind不再是JDK核心类库的一部分——它原本属于Java EE规范,在JDK模块化改造时被移出了默认模块。根据你使用的Java版本,给你几个针对性的解决方案:
情况1:你使用的是Java 8或更早版本
如果项目基于Java 8,这个包默认应该在JDK的rt.jar里,出现错误大概率是Eclipse的JRE配置出了问题:
- 右键项目 → 选择
Build Path→Configure Build Path - 在
Libraries标签页,检查JRE System Library是否指向正确的Java 8安装目录 - 如果没问题,尝试清理项目:
Project→Clean,然后重新生成JavaDoc
情况2:你使用的是Java 9及以上版本
针对Java 9+,有三种常用的解决方式:
方式一:在JavaDoc生成时添加模块参数
直接在Eclipse的JavaDoc生成配置里添加模块引用参数:
- 右键项目 →
Generate JavaDoc - 在弹出的窗口中,找到
VM options输入框(通常在生成向导的最后一步) - 输入参数:
--add-modules java.xml.bind - 点击
Finish重新生成JavaDoc
方式二:Maven/Gradle项目引入依赖
如果你的项目用构建工具管理依赖,直接在配置文件中添加JAXB的依赖:
Maven(pom.xml):
<dependencies> <!-- JAXB API 核心包 --> <dependency> <groupId>javax.xml.bind</groupId> <artifactId>jaxb-api</artifactId> <version>2.3.1</version> </dependency> <!-- JAXB 实现类(运行时必需) --> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId> <version>2.3.1</version> <scope>runtime</scope> </dependency> </dependencies>
添加后刷新Maven依赖,再重新生成JavaDoc即可。
方式三:普通Java项目手动添加JAR包
如果是没有使用构建工具的普通项目:
- 下载JAXB的核心JAR包:
jaxb-api.jar、jaxb-impl.jar(可获取对应稳定版本) - 右键项目 →
Build Path→Add External Archives,选择下载好的JAR包添加到项目中 - 重新生成JavaDoc
验证步骤
不管用哪种方式,完成配置后可以先编译项目确保没有编译错误,再尝试生成JavaDoc——如果编译能通过,JavaDoc生成一般也不会再报这个包不存在的问题。
内容的提问来源于stack exchange,提问作者Yogesh Bhattarai
相关产品推荐
相关产品推荐

