我在链接的 pom 中看到:
<dependency>
<groupId>com.sun.xml.bind</groupId>
<artifactId>jaxb-impl</artifactId>
</dependency>
但是还有一个父 pom,因此您可能希望跟踪该跟踪,以查看是否在此处指定了实际版本和/或范围(并向下传播)。
但如果不是,那么我猜 Jersey 团队认为 JAXB 2 API 已经足够成熟,可以让他们指定对 JAXB 实现的松散依赖。
JRE 附带了 JAXB impl 的特定实现,它在最长的时间里等同于 JAXB RI 2.1.7。但与此同时,在您的应用程序中,有一种机制可以轻松地换成您选择的另一种实现。
当然,您可以使用内置的 JRE JAXB 实现,如果它适用于您的应用程序,您肯定应该尝试。
尽管如此,可能导致您需要单独的 JAXB 实现的一些原因包括:遗留错误(在较新版本中已解决);需要更新的 JAXB API,例如 JAXB 2.2.x(在更新的 JRE 版本中提供);想要完全使用不同的实现(因为它恰好具有更好的 API 和/或针对您的特定用途的性能)等...
所以回到你的球衣问题,我再次猜测他们希望让开发人员能够灵活地引入他们选择的 JAXB 实现。我认为他们的指南中的某处有一定程度的建议。但是,JAXB RI 被特别标记为依赖项这一事实削弱了这一论点。