Java 11软件包javax.xml.soap不存在 [英] Java 11 package javax.xml.soap does not exist
问题描述
我正在尝试使用 SOAP :
MessageFactory mf = MessageFactory.newInstance();
SOAPMessage message = mf.createMessage();
当我使用 Java 8 构建项目时,可以,但是使用 Java 11 构建项目失败,并出现编译错误:
When I build the project with Java 8 it's fine, but building it with Java 11 fails with a compilation error:
package javax.xml.soap does not exist
如何解决此问题?
推荐答案
从Java 11中删除了JAX-WS
JAX-WS 不再与Java 11捆绑在一起.
JAX-WS removed from Java 11
JAX-WS is no longer bundled with Java 11.
根据发行说明,Java 11删除了Java EE模块:
According to the release notes, Java 11 removed the Java EE modules:
java.xml.ws (JAX-WS, plus the related technologies SAAJ and Web Services Metadata) - REMOVED
- Java 8-确定
- Java 9-已弃用
- Java 10-已弃用
- Java 11-已删除
有关更多信息,请参见 JEP 320 .
See JEP 320 for more info.
您可以使用Java EE技术的替代版本来解决此问题.只需添加 com.sun. xml.ws:jaxws-ri 包含所需技术的Maven工件:
You can fix the issue by using alternate versions of the Java EE technologies. Simply add a com.sun.xml.ws : jaxws-ri Maven artifact that contains the technologies you need:
<dependency>
<groupId>com.sun.xml.ws</groupId>
<artifactId>jaxws-ri</artifactId>
<version>2.3.2</version>
<type>pom</type>
</dependency>
Jakarta EE 8更新(2020年3月)
您可以使用 Jakarta XML Web Services 来自 Jakarta EE 8 :
<dependency>
<groupId>jakarta.xml.ws</groupId>
<artifactId>jakarta.xml.ws-api</artifactId>
<version>2.3.3</version>
</dependency>
<dependency>
<groupId>com.sun.xml.ws</groupId>
<artifactId>jaxws-rt</artifactId>
<version>2.3.3</version>
<scope>runtime</scope>
</dependency>
Jakarta EE 9更新(2020年11月)
使用Jakarta XML Web Services的最新版本 3.0 :
- Jakarta EE9 API jakarta.xml.ws-api
- 兼容的实现 jaxws-rt
- Jakarta EE9 API jakarta.xml.ws-api
- compatible implementation jaxws-rt
<dependency>
<groupId>jakarta.xml.ws</groupId>
<artifactId>jakarta.xml.ws-api</artifactId>
<version>3.0.0</version>
</dependency>
<dependency>
<groupId>com.sun.xml.ws</groupId>
<artifactId>jaxws-rt</artifactId>
<version>3.0.0</version>
<scope>runtime</scope>
</dependency>
注意:将javax.*
导入更改为jakarta.*
这篇关于Java 11软件包javax.xml.soap不存在的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!