首页 > 解决方案 > 为什么 java.lang.NoSuchMethodError: org.springframework.util.ClassUtils.forName(Ljava/lang/String;)Ljava/lang/Class 在部署操作中被抛出?

问题描述

案例 1:
当我在 E1 环境中使用 Jenkins 部署应用程序时,它可以成功运行。应用程序已部署,Jenkins 控制台输出没有错误。

案例 2:
当我在另一个环境(比如 E2)中使用 Jenkins 部署相同的应用程序时,部署操作失败,但应用程序确实在服务器中部署。虽然我在 Jenkins 控制台中遇到错误。我很困惑,是代码问题还是服务器问题,我该如何解决?
以下是这种情况下的错误:

目标状态:在集群 xCluster 上部署失败
15:53:27 java.lang.NoSuchMethodError: org.springframework.util.ClassUtils.forName(Ljava/lang/String;)Ljava/lang/Class; 15:53:27 at org.springframework.oxm.jaxb.JaxbUtils.(JaxbUtils.java:44) 15:53:27 at org.springframework.oxm.jaxb.Jaxb2Marshaller.createJaxbContext(Jaxb2Marshaller.java:272) 15:53 :27 at org.springframework.oxm.jaxb.AbstractJaxbMarshaller.afterPropertiesSet(AbstractJaxbMarshaller.java:125) 15:53:27 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.invokeInitMethods(AbstractAutowireCapableBeanFactory.java:1687) 15:53 :27 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.initializeBean(AbstractAutowireCapableBeanFactory.java:1624) 15:53:27 at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory。

标签: springspring-bootweblogic12cspring-framework-beansspring-oxm

解决方案


感谢 Deinum 和 Roddy 的评论!
我能够解决问题/错误并且部署操作成功。
这是我所做的:
我在我的库中找到了多个版本的 spring-oxm。我不得不删除最旧的并保留来自 spring-boot-starter-web-services 工具包的最新的。一旦你有了 spring-oxm jar 的单一版本和最新版本,你应该能够成功构建、测试和部署。
这是问题的根本原因。


推荐阅读