programing

" 아래의 속성을 com.zaxxer에 바인딩하지 못했습니다.hikari.Hikari Data Source 스프링 부트

mailnote 2023. 3. 7. 21:45
반응형

" 아래의 속성을 com.zaxxer에 바인딩하지 못했습니다.hikari.Hikari Data Source 스프링 부트

스프링 부트 어플리케이션을 실행하려고 하면 다음 에러가 발생.

Description:

Failed to bind properties under '' to com.zaxxer.hikari.HikariDataSource:

    Property: driverclassname
    Value: oracle.jdbc.OracleDriver
    Origin: "driverClassName" from property source "source"
    Reason: Unable to set value for property driver-class-name

Action:

Update your application's configuration

이것은 같은 문제이지만 maven을 사용하지 않습니다.

사용하고 있다spring Boot 2.0.0다음 선발 선수들과 함께.

dependencies {
    compile "org.springframework.boot:spring-boot-starter-web"
    compile "org.mybatis.spring.boot:mybatis-spring-boot-starter:1.3.1"
    testCompile "org.springframework.boot:spring-boot-starter-test"
}

그리고 이것은 나의application.properties파일

spring.datasource.url= *****
spring.datasource.username= ******
spring.datasource.password= ******

같은 문제(스프링 부트 2)

드라이버 클래스 추가를 수정했습니다.

application.properties 파일을 검색합니다.

spring.datasource.driver-class-name=com.mysql.jdbc.Driver

풀코드

spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
spring.jpa.show-sql=true
spring.jpa.hibernate.ddl-auto=upate
spring.datasource.url=jdbc:mysql://localhost:3306/database_name
spring.datasource.username=admin
spring.datasource.password=admin1234

Stephane Nicoll이 말했듯이, 당신의 클래스 패스에는 드라이버가 없습니다.gradle build에 아래와 같이 jdbc 드라이버를 포함해야 합니다.단, 제가 첨부한 드라이버 버전을 고집할 필요는 없습니다.

dependencies {
    compile "org.springframework.boot:spring-boot-starter-web"
    compile "org.mybatis.spring.boot:mybatis-spring-boot-starter:1.3.1"
    testCompile "org.springframework.boot:spring-boot-starter-test"
    runtime('com.oracle:ojdbc7:12.1.0.2.0') 
}

Spring Boot 2.0.6에서 Spring Boot 2.1.6으로 업데이트 할 때도 같은 오류가 발생하였습니다.

드라이버 클래스 이름을 명시적으로 설정하는 중spring.datasource.driver-class-name=com.mysql.jdbc.Driverapplication.properties문제가 해결되었습니다.

속성 파일에 아래를 추가했습니다.

spring.driversource.driverclassname = com.drivers.jdbc.드라이버의 휴지 상태.drivernate=drivernate.drivernate.drivernateMySQL5Dialect

POM 파일에 아래 내용을 추가하였습니다.

        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>

지금은 잘 되고 있어요.

를 추가해야 합니다.

   <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>runtime</scope>
    </dependency> 

pom.xml 파일의 의존 관계

드라이버가 클래스 패스에 없습니다.이것은 흥미로운 문제입니다.오해의 메시지를 피하기 위해 장애 분석기를 개선할 수 있다고 생각합니다.만약 문제가 있다면 문제를 확인하고 해결해 주십시오.

종속성을 추가하고 "spring.datasource.driver-class-name" 속성을 제거해야 합니다.

 <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>runtime</scope>
    </dependency> 

IntelliJ 를 실행하고 있는 유저가 있는 경우, 이 에러는 프로파일 누락에 의한 것일 가능성이 있습니다.예: -Dspring.profiles.active=local(또는 속성 파일 이름 관계)에 대한 VM args가 누락됨

아래에 pom.xml을 추가하면 됩니다.

     <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
    </dependency>

인텔리J를 실행하고 있는데 이 문제가 발생하면 pom.xml 파일에 다음 종속성을 추가합니다.

<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <scope>runtime</scope>
</dependency>

저도 이런 일이 있었어요.그러나 올바른 MySQL 버전을 pom.xml에 추가한 후 application.properties에 드라이버 세부 정보를 명시적으로 추가하면 문제가 해결되었습니다.

  1. Application.properties

    spring.discardsource.driver-class-name=com.disc.jdbc.드라이버

  2. pom.xml

     <dependency>
         <groupId>mysql</groupId>
         <artifactId>mysql-connector-java</artifactId>
         <version>5.1.34</version>
     </dependency>
    

설치된 버전에 따라 MySQL 버전을 pom.xml에 추가합니다.

mysql 의존관계가 없는 경우 다음과 같이 추가할 수 있는 pom.xml을 확인하십시오.

<dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
        <scope>runtime</scope>
</dependency>

파일 업데이트를 위해 maven을 실행합니다.

mvn clean install

애인의 의존관계를 갱신하다

같은 에러가 있었습니다.실수는 pom.xml 파일에 있습니다.SQL 커넥터의 의존관계에 오류가 있었습니다.application.properties 파일도 체크해 주세요.드라이버는 포함되지 않을 수 있습니다.

spring.datasource.url=jdbc:mysql://localhost:3307/test?useSSL=false
spring.datasource.username=root
spring.datasource.password=root
spring.jpa.show-sql=true
spring.jpa.generate-ddl=false
spring.jpa.hibernate.ddl-auto=update
spring.jpa.properties.hibernate.jdbc.lob.non_contextual_creation=true

spring.mvc.view.prefix = /WEB-INF/jsp/
spring.mvc.view.suffix = .jsp

이 답변들은 모두 코드 변경이 필요하며, 제 상황에서는 코드가 문제가 되지 않았습니다.이 에러는, 개발 환경에서 랜덤하게 발생합니다.이러한 에러는, 아무 이유 없이 발생합니다.설정이나 코드 변경과는 관련이 없습니다.

일관된 해결 방법을 찾은 것 같은데 왜 효과가 있는지 모르겠어요.

  1. 인텔 iJ IDEA 셧다운
  2. ".idea" 및 "build" 폴더 삭제
  3. IDEA의 재기동

이렇게 하면 해결되는 것 같지만, 무작위로 일어나는 일이 저를 정말 괴롭힙니다.왜 발생하는지, 위에서 수정한 이유를 알 수 없습니다.

다른 사람에게 도움이 될까 봐 덧붙이는 거예요.

그래들 의존관계만 다시 가져오면 됐어요.

maven 종속성 추가

    <dependency>
        <groupId>mysql</groupId>
        <artifactId>mysql-connector-java</artifactId>
    </dependency>

application.properties 파일을 추가하거나 변경합니다.

    spring.datasource.driver-class-name=com.mysql.jdbc.Driver
    spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect

사용된 이전 버전:

spring.jpa.database-platform=org.hibernate.dialect.MySQL5InnoDBDialect

이것은 더 이상 작동하지 않습니다.따라서 spring.jpa.properties로 변경됩니다.hibernate.hibernate.hibernate 를 실행합니다.

그 결과 다음과 같이 됩니다.

spring.datasource.url=jdbc:mysql://localhost:3306/<db name>
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.username=<db username>
spring.datasource.password=<db password>

spring.jpa.hibernate.ddl-auto=validate
spring.jpa.properties.hibernate.dialect=org.hibernate.dialect.MySQL5InnoDBDialect
spring.jpa.database=mysql
spring.jpa.show-sql=true

이전 빌드에서 빌드 아티팩트를 제거합니다.

mvn clean install

IntelliJII는 인텔리J에 의해 개발되었습니다.
> -- > 시 、 효......

프로젝트를 실행합니다.

언급URL : https://stackoverflow.com/questions/50215936/failed-to-bind-properties-under-to-com-zaxxer-hikari-hikaridatasource-spring

반응형