当我尝试运行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
这是same issue我有,但我不使用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= ******
正如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')
}
我的问题(Spring boot 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
驱动程序不在您的类路径上,这是一个有趣的问题,我认为可以改进故障分析器以避免误导消息。如果这是您的问题,请确认并打开一个问题,以便我们尝试改进它。
我在属性文件中添加了以下内容
spring.datasource.driverclassname = com.mysql.jdbc.Driver hibernate.dialect = org.hibernate.dialect.MySQL5Dialect
并在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 Boot 2.0.6更新到Spring Boot 2.1.6时,我遇到了同样的错误。
在spring.datasource.driver-class-name=com.mysql.jdbc.Driver
中明确设置驱动程序类名称application.properties
解决了这个问题