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

从JDK 1.8升级至JDK 11后遭遇com.sun.xml.internal.ws.spi.ProviderImpl类未找到异常

JDK 1.8升级至JDK 11后javax.xml.ws.WebServiceException异常解决方案

问题根源

JDK 11正式移除了内置的JAX-WS(Java API for XML Web Services)模块,包括com.sun.xml.internal.ws.spi.ProviderImpl这类实现类。而JDK 1.8将这些组件作为JDK核心部分内置,因此升级后项目找不到对应类,抛出ClassNotFoundException及WebServiceException。

解决方案

1. Maven项目处理

在项目的pom.xml中添加JAX-WS的API和运行时依赖:

<dependencies>
    <!-- JAX-WS API 依赖 -->
    <dependency>
        <groupId>javax.xml.ws</groupId>
        <artifactId>jaxws-api</artifactId>
        <version>2.3.1</version>
    </dependency>
    <!-- JAX-WS 运行时实现 -->
    <dependency>
        <groupId>com.sun.xml.ws</groupId>
        <artifactId>jaxws-rt</artifactId>
        <version>2.3.3</version>
        <scope>runtime</scope>
    </dependency>
</dependencies>

添加后执行Maven依赖更新,让项目自动引入所需JAR包。

2. 非Maven项目处理

手动下载以下核心JAR包,添加到项目的类路径(Eclipse中右键项目→Build Path→Add External Archives):

  • jaxws-api-2.3.1.jar
  • jaxws-rt-2.3.3.jar
  • 额外依赖包:javax.annotation-api-1.3.2.jar、javax.xml.bind-api-2.3.1.jar、jaxb-runtime-2.3.3.jar、stax-ex-1.8.1.jar、woodstox-core-5.2.1.jar

3. Eclipse配置检查

  • 确认项目的JRE系统库已切换为JDK 11:右键项目→Properties→Java Build Path→Libraries,替换原JDK 1.8为JDK 11。
  • 若项目中存在jaxws.properties文件,确保配置的Provider类路径正确:
    javax.xml.ws.spi.Provider=com.sun.xml.ws.spi.ProviderImpl
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 14:40:25