我有一个spring servlet-context.xml文件,其中包含以下定义:
...
xmlns:mongo="http://www.springframework.org/schema/data/mongo"
http://www.springframework.org/schema/data/mongo http://www.springframework.org/schema/data/mongo/spring-mongo-1.0.xsd
....
<mongo:repositories base-package="com.example.repositories.mongodb"/>
这导致STS中的编译错误:
描述资源路径位置类型错误处理XML '试图访问方法 org.springframework.context.annotation.AnnotationConfigUtils.processCommonDefinitionAnnotations(Lorg / springframework的/豆类/工厂/注解/ AnnotatedBeanDefinition;)V 来自课堂 org.springframework.data.repository.config.RepositoryComponentProvider”。 请参阅错误日志以获取更多 详细信息servlet-context.xml / example / src / main / webapp / WEB-INF行 97春豆问题
当我删除base-package的内容时,错误消失了。我想也许我定义的一些存储库是错误的,但它们似乎工作正常。应用程序启动良好,运行良好。我使用的是spring-data-mongodb 1.4.0
有什么想法吗?
答案 0 :(得分:2)
用STS 3.5.0解决。 STS 3.5.0附带Spring 4.0.2。
答案 1 :(得分:0)
确保使用最新的Spring版本。 Spring Data Mongo 1.4.0需要Spring 3.2.8:
$ git checkout 1.4.0.RELEASE
$ mvn dependency:list -Dsort
…
[INFO] org.springframework.data:spring-data-commons:jar:1.7.0.RELEASE:compile
[INFO] org.springframework.data:spring-data-mongodb:jar:1.4.0.RELEASE:compile
[INFO] org.springframework:spring-aop:jar:3.2.8.RELEASE:compile
[INFO] org.springframework:spring-aspects:jar:3.2.8.RELEASE:compile
[INFO] org.springframework:spring-beans:jar:3.2.8.RELEASE:compile
[INFO] org.springframework:spring-context:jar:3.2.8.RELEASE:compile
[INFO] org.springframework:spring-core:jar:3.2.8.RELEASE:compile
[INFO] org.springframework:spring-expression:jar:3.2.8.RELEASE:compile
[INFO] org.springframework:spring-jdbc:jar:3.2.8.RELEASE:compile
[INFO] org.springframework:spring-orm:jar:3.2.8.RELEASE:compile
[INFO] org.springframework:spring-test:jar:3.2.8.RELEASE:test
[INFO] org.springframework:spring-tx:jar:3.2.8.RELEASE:compile
特别是我们依赖于异常显示的方法,从Spring 3.2.5 IIRC开始公开。
答案 2 :(得分:0)
我面对的是类似的,我也有它的帖子(Setting up spring app with spring data repositories and mongo db)。我使用的是Spring 4.0.1 jar和Spring Data Mongo 1.4.0 jar,但我仍然看到了这个问题。显示错误,您提到mongo:repository标记。你不会得到任何线索为什么它发生。最后,我将spring jar版本更改为4.0.0,然后从maven存储库中删除所有spring jar并尝试(再次更新maven)构建。它工作正常。我很确定它也适用于4.0.1弹簧罐。(我正在使用相同配置的另一个项目,并且它在4.0.1罐中运行良好:)) 我将此问题提交给maven和eclipse。有些问题我根本没有任何线索 。
如果您正在使用正确的罐子,如Oliver建议那么您需要做一些试验和错误:)
答案 3 :(得分:0)
我使用的是弹簧4.0.2,直到昨天一切正常。今天,当我将spring-data-mongodb从1.3.4更新到1.4.0时,我开始收到此错误。 1.4.0是否与spring 4.0.2不兼容?我检查了我的maven依赖图,所有弹簧罐指向4.0.2
[更新]我升级到STS 3.5.1
后,这些错误消失了