将弹簧从3.2升级到4.0

时间:2015-10-13 18:30:26

标签: spring spring-mvc

升级前的步骤:

1)更新所有xml命名空间位置,使其不包含(http://howtodoinjava.com/2013/12/28/do-not-specify-version-numbers-in-spring-schema-references/

建议的版本信息

2)将父pom.xml更新为4.0.0.RELEASE

一切都在编译,但在部署升级的战争时,我收到了这个例外:

  

19:22:25,480 ERROR [org.springframework.web.context.ContextLoader]   (ServerService线程池 - 108)上下文初始化失败:   java.lang.IncompatibleClassChangeError:Class   org.springframework.core.DefaultParameterNameDiscoverer没有   实现请求的接口   org.springframework.core.ParameterNameDiscoverer at   org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:193)     在   org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1114)     在   org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1017)     在   org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:504)     在   org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475)     在   org.springframework.beans.factory.support.AbstractBeanFactory $ 1.getObject(AbstractBeanFactory.java:304)     在   org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)     在   org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)     在   org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)     在   org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:700)     在   org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932)     在   org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479)     在   org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:381)     在   org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:293)     在   org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:106)     在   io.undertow.servlet.core.ApplicationListeners.contextInitialized(ApplicationListeners.java:173)     在   io.undertow.servlet.core.DeploymentManagerImpl.deploy(DeploymentManagerImpl.java:195)     在   org.wildfly.extension.undertow.deployment.UndertowDeploymentService.startContext(UndertowDeploymentService.java:100)     在   org.wildfly.extension.undertow.deployment.UndertowDeploymentService $ 1.run(UndertowDeploymentService.java:82)     在java.util.concurrent.Executors $ RunnableAdapter.call(未知   来自)java.util.concurrent.FutureTask.run(未知来源)at   java.util.concurrent.ThreadPoolExecutor.runWorker(未知来源)at   java.util.concurrent.ThreadPoolExecutor $ Worker.run(未知来源)at   java.lang.Thread.run(未知来源)at   org.jboss.threads.JBossThread.run(JBossThread.java:320)

     

19:22:25,480 ERROR [org.jboss.msc.service.fail](ServerService Thread   池 - 108)MSC000001:无法启动服务   jboss.undertow.deployment.default-server.default-host./mpd-builder:   服务中的org.jboss.msc.service.StartException   jboss.undertow.deployment.default-server.default-host./mpd-builder:   java.lang.IncompatibleClassChangeError:Class   org.springframework.core.DefaultParameterNameDiscoverer没有   实现请求的接口   org.springframework.core.ParameterNameDiscoverer at   org.wildfly.extension.undertow.deployment.UndertowDeploymentService $ 1.run(UndertowDeploymentService.java:85)     在java.util.concurrent.Executors $ RunnableAdapter.call(未知   来自)java.util.concurrent.FutureTask.run(未知来源)at   java.util.concurrent.ThreadPoolExecutor.runWorker(未知来源)at   java.util.concurrent.ThreadPoolExecutor $ Worker.run(未知来源)at   java.lang.Thread.run(未知来源)at   org.jboss.threads.JBossThread.run(JBossThread.java:320)引起:   java.lang.IncompatibleClassChangeError:Class   org.springframework.core.DefaultParameterNameDiscoverer没有   实现请求的接口   org.springframework.core.ParameterNameDiscoverer at   org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:193)     在   org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:1114)     在   org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:1017)     在   org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:504)     在   org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:475)     在   org.springframework.beans.factory.support.AbstractBeanFactory $ 1.getObject(AbstractBeanFactory.java:304)     在   org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:228)     在   org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:300)     在   org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:195)     在   org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:700)     在   org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:932)     在   org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:479)     在   org.springframework.web.context.ContextLoader.configureAndRefreshWebApplicationContext(ContextLoader.java:381)     在   org.springframework.web.context.ContextLoader.initWebApplicationContext(ContextLoader.java:293)     在   org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:106)     在   io.undertow.servlet.core.ApplicationListeners.contextInitialized(ApplicationListeners.java:173)     在   io.undertow.servlet.core.DeploymentManagerImpl.deploy(DeploymentManagerImpl.java:195)     在   org.wildfly.extension.undertow.deployment.UndertowDeploymentService.startContext(UndertowDeploymentService.java:100)     在   org.wildfly.extension.undertow.deployment.UndertowDeploymentService $ 1.run(UndertowDeploymentService.java:82)     ......还有6个

1 个答案:

答案 0 :(得分:0)

原来这是我孩子pom.xml中的版本冲突。它指的是3.2版本,父母指向4.0.0