gpt4 book ai didi

java.lang.NoClassDefFoundError : javax/xml/soap/SOAPException

转载 作者:IT老高 更新时间:2023-10-28 13:56:20 26 4
gpt4 key购买 nike

我已经使用 Spring 创建了一个 Web 服务。在我的嵌入式 tomcat 服务器上运行它时工作正常。但是,当我将它打包为 JAR 文件并使用 java -jar 命令运行它时,我收到了这个异常。

我的服务发送一个简单的soap请求,服务器响应是:

 "exception": "java.lang.NoClassDefFoundError",
"message": "javax/xml/soap/SOAPException",

这是我在 Postman 中得到的响应。

我可以找到问题的任何想法。

最佳答案

JavaSE 8 包含包 java.xml.soap
JavaSE 9 将包 javax.xml.soap 移至模块 java.xml.ws
与 JEE 共享的模块(如 java.xml.ws)包含在 JavaSE 9 中,但
- deprecated用于从 JavaSE 的 future 版本中删除,以及
- not on the default module path .

一个快速的解决方法是
- 使用 JRE 8 运行 jar:$MY_JRE8_HOME/bin/java -jar my.jar,或
- 为 JRE 9 添加一个模块:java --add-modules java.xml.ws -jar my.jar

从长远来看,使用 java.xml.ws 等模块的 JavaSE 项目必须像其他库一样显式包含该模块。

https://stackoverflow.com/a/46359097
JDK 9 Migration Guide: Modules Shared with JEE Not Resolved by Default

(在 https://spring.io/guides/gs/producing-web-service/ 上复制了 NoClassDefError 和使用压缩 SOAP Web 服务项目的解决方法)

关于java.lang.NoClassDefFoundError : javax/xml/soap/SOAPException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48626824/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com