2016-04-07 8 views
0

私はMongoTemplate Beanを作成するために、XML設定を使用していますが、XMLは次のようになります。春データのMongoDBコア1.9.1.RELEASEがjava.lang.NoClassDefFoundErrorのを与える:ORG/springframework /データ/地域/ GeoResults

<bean id="user" class="org.springframework.data.authentication.UserCredentials"> 
     <constructor-arg name="username" value="${mongodb.username}" /> 
     <constructor-arg name="password" value="${mongodb.password}" /> 
</bean> 

<mongo:mongo id="mongo" replica-set="${mongodb.replica.set}"> 
     <mongo:options connections-per-host="${mongodb.connections.per.host}" 
      threads-allowed-to-block-for-connection-multiplier="${mongodb.connections.block.thread}" 
      slave-ok="true" write-number="1" write-timeout="0" write-fsync="true" /> 
</mongo:mongo> 

<bean id="readPreferenceSecondary" class="com.mongodb.TaggableReadPreference.SecondaryReadPreference"> 
</bean> 
<bean id="mongoTemplate" class="org.springframework.data.mongodb.core.MongoTemplate" autowire="byType"> 
     <constructor-arg name="mongo" ref="mongo" /> 
     <constructor-arg name="databaseName" value="${mongodb.name}" /> 
     <constructor-arg name="userCredentials" ref="user" /> 
     <property name="readPreference" ref="readPreferenceSecondary" /> 
</bean> 

私のPOMの依存関係は、以下のとおりです。

<properties> 
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
    <spring.version>4.1.6.RELEASE</spring.version> 
</properties> 

<dependencies> 
    <dependency> 
     <groupId>org.apache.logging.log4j</groupId> 
     <artifactId>log4j-core</artifactId> 
     <version>2.5</version> 
    </dependency> 
    <dependency> 
     <groupId>com.google.code.gson</groupId> 
     <artifactId>gson</artifactId> 
     <version>2.6.2</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-core</artifactId> 
     <version>${spring.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-beans</artifactId> 
     <version>${spring.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-context</artifactId> 
     <version>${spring.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework</groupId> 
     <artifactId>spring-web</artifactId> 
     <version>${spring.version}</version> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.data</groupId> 
     <artifactId>spring-data-mongodb</artifactId> 
     <version>1.9.1.RELEASE</version> 
    </dependency> 
    <dependency> 
     <groupId>org.mongodb</groupId> 
     <artifactId>mongo-java-driver</artifactId> 
     <version>3.2.2</version> 
    </dependency> 
</dependencies> 

これは私にエラーを与える:

Caused by: org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'scenarioRepository': Injection of autowired dependencies failed; nested exception is org.springframework.beans.factory.BeanCreationException: Could not autowire field: org.springframework.data.mongodb.core.MongoTemplate com.airtel.agile.decision.tree.repositories.impl.ScenarioRepositoryImpl.mongoTemplate; nested exception is java.lang.NoClassDefFoundError: org/springframework/data/geo/GeoResults

ホーこのことを働かせるためには?

+1

pom.xmlを投稿してください。 – asg

答えて

0

次の依存関係が追加され、コードが正常に機能しました。それはそうでなければ古いバージョンをピックアップしていました。

<dependency> 
     <groupId>org.springframework.data</groupId> 
     <artifactId>spring-data-commons</artifactId> 
     <version>1.12.1.RELEASE</version> 
    </dependency> 
関連する問題