首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在docker中运行的Spring boot SOAP服务找不到ExtensibilityElement类

在docker中运行的Spring boot SOAP服务找不到ExtensibilityElement类
EN

Stack Overflow用户
提问于 2019-03-28 02:34:05
回答 1查看 251关注 0票数 0

我正在使用spring-boot设置一个SOAP服务,并在docker容器中运行它。当我单独运行jar时,一切正常,但当我尝试在docker容器中运行它时,它无法初始化并抛出以下错误:

代码语言:javascript
复制
Failed to instantiate [org.springframework.ws.wsdl.wsdl11.Wsdl11Definition]: Factory method 'defaultWsdl11Definition' threw exception; 
nested exception is java.lang.NoClassDefFoundError: javax/wsdl/extensions/ExtensibilityElement

我已经尝试了不同的镜像,还创建了一个基础docker镜像并手动安装oracle jdk。

您可以找到确切的代码here,然后自己尝试。

要运行该应用程序:

代码语言:javascript
复制
gradle build
java -jar build/libs/service-0.0.1-SNAPSHOT.jar

要创建docker映像,请执行以下操作:

代码语言:javascript
复制
docker build -t soap:service --build-arg JAR_FILE=./build/libs/service-0.0.1-SNAPSHOT.jar .

要运行docker镜像,请执行以下操作:

代码语言:javascript
复制
docker run soap:service

任何帮助都是非常感谢的。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-29 02:04:21

如果有人想知道,问题是wsdl4j库被设置在compileOnly上,通过更改它来编译该库,该库显示在最终的jar上。

如需更多信息,请访问https://community.liferay.com/blogs/-/blogs/gradle-compile-vs-compileonly-vs-compileinclude

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55384307

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档