2017-12-06 12 views
0

스프링 부트 애플리케이션을 개발하기 위해 스프링 부트를 사용하고 있습니다. 마지막으로 데이터를 MongoDB에 쓰려면 내 응용 프로그램이 필요하므로 org.springframework.batch.item.data.MongoItemWriterorg.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처럼 보이는 충분하고 외모도 간단하다 like this-

이제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). 

을 제공합니다, 나는 봄이에 의해 내 데이터 저장소에 대해 알려 할 필요가 있다고 생각 application.properties에 spring.datasource.driver 클래스 이름의 가치를 제공

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

내 드라이브 클래스 이름으로 com.mongodb.Server를 제공하는 경우 클래스 경로를 찾을 수 없습니다 및 R 아닌 그 내가 classpath에 mongo 자바 드라이버 의존성을 가지고 있음에도 불구하고 에코 화됨.

mongo-java-driver을 사용하려면 mongoDB의 드라이버 클래스 이름에 값을 입력해야합니까?

드라이버 클래스 이름이이 문제의 원인이 아닌 경우이 질문 제목에 언급 된 문제 "Cannot determine embedded database driver class for database type NONE"의 해결 방법은 무엇입니까? 메인 클래스에서 DataSourceAutoConfiguration.class을 exluding

답변

0

시도 :

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

은 또한이 필요하지 않습니다 :

spring.datasource.driver-class-name 

당신은뿐만 아니라 JPA 구성이 필요하지 않는 한.