java.lang.NoSuchMethodError: org.springframework.core.env.ConfigurableEnvironment.merge(Lorg/springframework/core/env/ConfigurableEnvironment;)V
参见:
http://stackoverflow.com/questions/11951825/spring-web-flow-configuration-with-jsf-getting-exception
大意是:
merge方法是Spring Framework 3.1.2引入的。
spring-context 3.1.2 jar 和 spring-core 3.1.0 or 3.1.1 jar 之间通信(互相调用)失败。简单来说,就是版本冲突。
解决:
spring的jar版本维护一致即可。
如果spring-context 3.1.2.jar由其他依赖自动引入,只需要在pom.xml文件里,用exclusion去掉即可。
比如:
<dependency>
<groupId>com.example.framework</groupId>
<artifactId>example</artifactId>
<version>1.0</version>
<exclusions>
<exclusion>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</exclusion>
</exclusions>
</dependency>
exclusion:当计算传递依赖时, 从依赖构件列表里,列出被排除的依赖构件集。即告诉maven你只依赖指定的项目,不依赖项目的依赖。此元素主要用于解决版本冲突问题.
NoSuchMethodError:org.springframework.core.env.ConfigurableEnvironment.merge
最新推荐文章于 2023-05-06 14:18:10 发布
本文介绍了解决Spring框架中因版本不一致导致的java.lang.NoSuchMethodError错误的方法。具体介绍了如何通过调整pom.xml文件中的依赖排除(exclusion)来避免版本冲突。
摘要由CSDN通过智能技术生成