繁体   English   中英

为什么 java.lang.NoSuchMethodError: org.springframework.util.ClassUtils.forName(Ljava/lang/String;)Ljava/lang/Class 在部署操作时抛出?

[英]Why java.lang.NoSuchMethodError: org.springframework.util.ClassUtils.forName(Ljava/lang/String;)Ljava/lang/Class is thrown on Deploy operation?

情况1:
当我在 E1 环境中部署带有 Jenkins 的应用程序时,它可以成功运行。 应用程序已部署,Jenkins 控制台 output 上没有错误。

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

目标 state:在集群 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.doCreateBean(AbstractAutowireCapableBeanFactory.java:555) 15 :53:27 在 org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:483) 15:53:27 在 org.s pringframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:306) 15:53:27 在 org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.8821328:27:6:94508)在 org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:302) 15:53:27 在 org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.88213246945881:1957) :27 在 org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:761)15:53:27 在 org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.882457585:882457585) :27 在 org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:543) 15:53:27 在 org.springframework.boot.context.embedded.EmbeddedW ebApplicationContext.refresh(EmbeddedWebApplicationContext.java:122) 15:53:27 在 org.springframework.boot.SpringApplication.refresh(SpringApplication.java:693) 15:53:27 在 org.springframework.boot.SpringApplication.refreshContext(SpringApplication. java:360) 15:53:27 在 org.springframework.boot.SpringApplication.run(SpringApplication.java:303) 15:53:27 在 org.springframework.boot.web.support.SpringBootServletInitializer.run(Spriting182550868988.support.SpringBootServletInitializer.run(Spriting1825.88Initializer89: 154) 15:53:27 at org.springframework.boot.web.support.SpringBootServletInitializer.createRootApplicationContext(SpringBootServletInitializer.java:134) 15:53:27 at org.springframework.boot.web.support.SpringBootServletInitializer.onStartup(SpringBootServletInitializer. java:87) 15:53:27 在 org.springframework.web.SpringServletContainerInitializer.onStartup(SpringServletContainerInitializer.java:169) 15:53:27 在博客 ic.servlet.internal.WebAppServletContext.initContainerInitializer(WebAppServletContext.java:1389) 15:53:27 在 weblogic.servlet.internal.WebAppServletContext.initContainerInitializers(WebAppServletContext.java:1326) servlet 15:53:27 WebAppServletContext.initContainerInitializers(WebAppServletContext.java:1312) 15:53:27 at weblogic.servlet.internal.WebAppServletContext.preloadResources(WebAppServletContext.java:1829) 15:53:27 at weblogic.servlet.WebServletApplet.Internal.preloadResources(WebAppServletContext.java:1829) 15:53:27 java:2891) 15:53:27 在 weblogic.servlet.internal.WebAppModule.startContexts(WebAppModule.java:1661) 15:53:27 在 weblogic.servlet.internal.WebAppModule.start(WebAppModule.88213246:823885) 53:27 在 weblogic.application.internal.ExtensibleModuleWrapper$StartStateChange.next(ExtensibleModuleWrapper.java:360) 15:53:27 在 weblogic.application.internal.ExtensibleModuleWrapper$StartStateChange.next(Exte nsibleModuleWrapper.java:356) 15:53:27 在 weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:42) 15:53:27 在 weblogic.application.internal.ExtensibleModuleWrapper.start(Extensible.8864138) 15:53:27 在 weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:124) 15:53:27 在 weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:216) 15 :53:27 在 weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:211) 15:53:27 在 weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:42) 15:53: 27 在 weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:73) 15:53:27 在 weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:24) 15:53:27 在weblogic.application.internal.BaseDeployment$2.next(BaseDeployment .java:729) 15:53:27 在 weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:42) 15:53:27 在 weblogic.application.internal.BaseDeployment.activate(BaseDeployment.8821324:92588)8 :53:27 在 weblogic.application.internal.EarDeployment.activate(EarDeployment.java:61) 15:53:27 在 weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:165) 15:53:27 在 weblogic .deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:80) 15:53:27 在 weblogic.deploy.internal.targetserver.operations.AbstractOperation.activate(AbstractOperation.java:587) 15:53:27 在 weblogic .deploy.internal.targetserver.operations.ActivateOperation.activateDeployment(ActivateOperation.java:150) 15:53:27 在 weblogic.deploy.internal.targetserver.operations.ActivateOperation.doCommit(ActivateOperation.java:116) 15:53:27在 weblogic.deploy.internal.targetserver.o perations.AbstractOperation.commit(AbstractOperation.java:339) 15:53:27 在 weblogic.deploy.internal.targetserver.DeploymentManager.handleDeploymentCommit(DeploymentManager.java:846) 15:53:27 在 weblogic.deploy.internal.targetserver. DeploymentManager.activateDeploymentList(DeploymentManager.java:1275) 15:53:27 在 weblogic.deploy.internal.targetserver.DeploymentManager.handleCommit(DeploymentManager.java:442) 15:53:27 在 weblogic.deploy.internal.targetService.targetService.DeploymentDeployment提交(DeploymentServiceDispatcher.java:176)15:53:27 在 weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliverer.doCommitCallback(DeploymentReceiverCallbackDeliverer.java:195)15:53:27 在 weblogic.target.internalserverlogic.deployment.internalserverlogic. DeploymentReceiverCallbackDeliverer.access$100(DeploymentReceiverCallbackDeliverer.java:13) 15:53:27 在 weblogic.deploy.service.internal.targetserver.DeploymentReceiverCallbackDeliv erer$2.run(DeploymentReceiverCallbackDeliverer.java:68) 15:53:27 at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:553) 15:53:27 at weblogic.work.ExecuteThread.execute(ExecuteThread.java :311) 15:53:27 在 weblogic.work.ExecuteThread.run(ExecuteThread.java:263)

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

对我来说:实现'org.springframework.boot:spring-boot-starter-web' 实现'org.springframework:spring-beans:5.3.17'

只需删除对我有用的实现'org.springframework:spring-beans:5.3.17'

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM