0
私はjarファイルを管理するためにMavenを使用しています、とのMongoDBについての私の依存関係は以下の通りです:エラー:java.lang.NoSuchFieldErrorの:INSTANCE
<!-- https://mvnrepository.com/artifact/org.mongodb/mongo-java-driver -->
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>3.4.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.data/spring-data-mongodb -->
<dependency>
<groupId>org.springframework.data</groupId>
<artifactId>spring-data-mongodb</artifactId>
<version>1.9.5.RELEASE</version>
</dependency>
しかし、私はspringmvcプログラムを起動するときに、エラーが発生し:
Caused by: java.lang.NoSuchFieldError: INSTANCE
at org.springframework.data.mongodb.core.convert.DefaultMongoTypeMapper.<init>(DefaultMongoTypeMapper.java:65)
at org.springframework.data.mongodb.core.convert.MappingMongoConverter.<init>(MappingMongoConverter.java:108)
at org.springframework.data.mongodb.config.AbstractMongoConfiguration.mappingMongoConverter(AbstractMongoConfiguration.java:192)
at com.aixueniao.server.configuration.MongoConfig$$EnhancerBySpringCGLIB$$ee562bf3.CGLIB$mappingMongoConverter$5(<generated>)
at com.aixueniao.server.configuration.MongoConfig$$EnhancerBySpringCGLIB$$ee562bf3$$FastClassBySpringCGLIB$$973f1472.invoke(<generated>)
at org.springframework.cglib.proxy.MethodProxy.invokeSuper(MethodProxy.java:228)
at org.springframework.context.annotation.ConfigurationClassEnhancer$BeanMethodInterceptor.intercept(ConfigurationClassEnhancer.java:312)
at com.aixueniao.server.configuration.MongoConfig$$EnhancerBySpringCGLIB$$ee562bf3.mappingMongoConverter(<generated>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:166)
... 85 more
何が問題なのですか?おそらく、依存関係のバージョンにエラーがありますが、どうすれば修正できますか?前もって感謝します。
はい、それはjarの競合のように見えます。おそらく、バージョンをクリーンにして劣化させてチェックすることができます。 –
mongo javaドライバの依存関係を取り除く。 spring mongo db依存性は、mongo javaドライバに推移的に依存します。現在のspring mongoリリースバージョンは、2.x mongoドライババージョンのみをサポートしています。 3.x mongoドライバのサポートが必要な場合は、spring mongoリリース候補バージョンの1つを使用する必要があります。 – Veeram
ライブラリバージョンの競合エラーです。あなたのspring-data-mongodbを1.7.2に低下させます。解放してください。うまくいくでしょう。そうでなければ除外を適用しようとする –