2017-12-06 13 views
0

私はSpringバッチアプリケーションを開発するためにSpringブートを使用しています。最終的にデータをMongoDBに書き込むために私のアプリケーションが必要になりますので、org.springframework.batch.item.data.MongoItemWriterのためにorg.springframework.data.mongodb.core.MongoTemplateを設定する必要があります。スプリングブートmongodb autoconfigureが "データベースタイプNONEの埋め込みデータベースドライバクラスを特定できません"

マイのpom.xml依存セクションがファイルがこの

spring.data.mongodb.host=mongohost 
spring.data.mongodb.port=27017 
spring.data.mongodb.authentication-database=authdb 
spring.data.mongodb.username=user 
spring.data.mongodb.password=pwd 

spring.datasource.driver-class-name=<< I don't know what to put here >> 

メインクラスのように見えますthis-

<dependencies> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-autoconfigure</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-batch</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-data-mongodb</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework</groupId> 
      <artifactId>spring-web</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>com.fasterxml.jackson.core</groupId> 
      <artifactId>jackson-databind</artifactId> 
     </dependency> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-test</artifactId> 
     </dependency> 

     <dependency> 
      <groupId>org.springframework.batch</groupId> 
      <artifactId>spring-batch-test</artifactId> 
      <version>${spring.batch.version}</version> 
      <scope>test</scope> 
     </dependency> 
     <!-- https://mvnrepository.com/artifact/org.projectlombok/lombok --> 
     <dependency> 
      <groupId>org.projectlombok</groupId> 
      <artifactId>lombok</artifactId> 
      <version>1.16.18</version> 
     </dependency> 
     <!-- https://mvnrepository.com/artifact/org.jongo/jongo --> 
     <dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>slf4j-api</artifactId> 
      <version>${slf4j.version}</version> 
     </dependency> 

     <dependency> 
      <groupId>org.slf4j</groupId> 
      <artifactId>slf4j-simple</artifactId> 
      <version>${slf4j.version}</version> 
     </dependency> 
     <!-- https://mvnrepository.com/artifact/org.jvnet.jaxb2_commons/jaxb2-basics-runtime --> 
     <dependency> 
      <groupId>org.jvnet.jaxb2_commons</groupId> 
      <artifactId>jaxb2-basics-runtime</artifactId> 
      <version>1.11.1</version> 
     </dependency> 

     <!--<dependency>--> 
      <!--<groupId>de.flapdoodle.embed</groupId>--> 
      <!--<artifactId>de.flapdoodle.embed.mongo</artifactId>--> 
      <!--<version>1.50.5</version>--> 
      <!--<scope>test</scope>--> 
     <!--</dependency>--> 

     <!--<dependency>--> 
      <!--<groupId>cz.jirutka.spring</groupId>--> 
      <!--<artifactId>embedmongo-spring</artifactId>--> 
      <!--<version>RELEASE</version>--> 
      <!--<scope>test</scope>--> 
     <!--</dependency>--> 

     <!-- https://mvnrepository.com/artifact/org.mongodb/mongo-java-driver --> 
     <dependency> 
      <groupId>org.mongodb</groupId> 
      <artifactId>mongo-java-driver</artifactId> 
      <version>3.6.0</version> 
     </dependency> 


    </dependencies> 

application.propertiesのように見えるが、十分とルックスも簡単ですこのように -

今3210

、私は私のメインクラスを実行しようとするたびに、それはこの問題について多くのことを研究した後、エラー

*************************** 
APPLICATION FAILED TO START 
*************************** 

Description: 

Cannot determine embedded database driver class for database type NONE 

Action: 

If you want an embedded database please put a supported one on the classpath. If you have database settings to be loaded from a particular profile you may need to active it (no profiles are currently active). 

を与え、私は春による私のデータストアを知らせる必要があることを考え出しました私は私のドライブのクラス名としてcom.mongodb.Serverを提供する場合application.properties

spring.datasource.driver-class-name=com.mongodb.Server 

spring.datasource.driverクラス名の価値を提供するクラスパスに見つからないとrではありません私はclasspathにmongo javaドライバの依存関係を持っているにもかかわらず、認識されています。

mongo-java-driverを使用したい場合は、mongoDBのドライバクラス名の値を入力する必要がありますか?

ドライバクラス名がこの問題の原因でない場合、この質問のタイトルに記載されている問題"Cannot determine embedded database driver class for database type NONE"の解決策は何ですか?あなたのメインクラスでDataSourceAutoConfiguration.classをexluding

答えて

0

試してください:あなたにもJPAの構成を必要としない限り、

spring.datasource.driver-class-name 

@SpringBootApplication 
@EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class}) 
public class Main { 
    public static void main(String[] args) { 
     SpringApplication.run(Main.class, args); 
    } 
} 

また、あなたはこれを必要としません。

関連する問題