无法绑定'''''到com.zaxxer.hikari.HikariDataSource Spring Boot

时间:2018-05-07 13:51:40

标签: spring eclipse spring-boot jdbc

当我尝试运行spring boot应用程序时出现以下错误。

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

这是Implementing a Container View Controller我有,但我没有使用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= ******

13 个答案:

答案 0 :(得分:9)

我遇到了同样的问题(春季启动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

答案 1 :(得分:6)

正如Stephane Nicoll所说,你的类路径上没有驱动程序。您需要在gradle构建中包含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') 
}

答案 2 :(得分:4)

驱动程序不在您的类路径上,这是一个有趣的问题,我认为可以改进故障分析器以避免这种误导性消息。如果这是你的问题,请确认并打开一个问题,以便我们尝试改进它。

答案 3 :(得分:2)

我已在属性文件中添加了以下内容

spring.datasource.driverclassname = com.mysql.jdbc.Driver hibernate.dialect = org.hibernate.dialect.MySQL5Dialect

并在POM文件中添加了以下内容

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

现在工作正常。

答案 4 :(得分:2)

万一任何人都在运行智能错误,则无法立即清除此错误,原因可能是缺少配置文件。例如。缺少-Dspring.profiles.active = local的vm args(或任何属性文件名)

答案 5 :(得分:2)

这也发生在我身上。 但是在我的pom.xml中添加了正确的MySQL版本并将驱动程序详细信息添加到application.properties之后,此问题解决了。

  1. Application.properties

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

  2. pom.xml

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

根据安装的版本将MySQL版本添加到pom.xml中。

答案 6 :(得分:1)

您必须添加

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

您pom.xml文件中的依赖性

答案 7 :(得分:1)

从Spring Boot 2.0.6更新到Spring Boot 2.1.6时,我遇到了相同的错误。

spring.datasource.driver-class-name=com.mysql.jdbc.Driver中显式设置驱动程序类名称application.properties已解决该问题

答案 8 :(得分:1)

如果您运行intelliJ并遇到此问题,只需在您的pom.xml文件中添加此依赖项:

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

答案 9 :(得分:0)

我们必须添加依赖项并删除属性“ spring.datasource.driver-class-name”

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

答案 10 :(得分:0)

您只需要在pom.xml中添加以下内容

{{1}}

答案 11 :(得分:0)

如果没有mysql依赖项,请检查pom.xml,可以这样添加

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

在更新文件之前,运行maven

mvn clean install

更新您的Maven依赖项

答案 12 :(得分:0)

我有同样的错误,该错误是在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