在启动 Spring Boot 的项目的时候提示数据源未配置的错误。java
09:52:08.333 [main] DEBUG o.s.b.d.LoggingFailureAnalysisReporter - Application failed to start due to an exception org.springframework.boot.autoconfigure.jdbc.DataSourceProperties$DataSourceBeanCreationException: Failed to determine a suitable driver class at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.determineDriverClassName(DataSourceProperties.java:233) at org.springframework.boot.autoconfigure.jdbc.DataSourceProperties.initializeDataSourceBuilder(DataSourceProperties.java:174)
Spring 会提示你完整的致使启动错误的信息是:mysql
*************************** APPLICATION FAILED TO START *************************** Description: Failed to configure a DataSource: 'url' attribute is not specified and no embedded datasource could be configured. Reason: Failed to determine a suitable driver class Action: Consider the following: If you want an embedded database (H2, HSQL or Derby), please put it on the classpath. If you have database settings to be loaded from a particular profile you may need to activate it (no profiles are currently active). Process finished with exit code 1
从上面的启动信息来看,已经说得很是清楚了,就是由于你配置了 Spring 的数据组件,可是你没有配置相应的数据源。spring
由于这个会致使你的启动失败。sql
有下面的集中解决办法:数据库
最简单的解决办法就是在依赖中添加 H2 的数据库,若是你使用 Spring Batch 的话,这个组件也是须要的,由于 Spring 会使用 H2 为数据源。ide
若是你已经添加了数据库驱动,例如你添加了 mysql 的数据库驱动。spring-boot
那么你须要制定 Mysql 的数据库链接参数。ui
spring.datasource.url=jdbc:mysql://localhost:3306/myDb spring.datasource.username=user1 spring.datasource.password=pass spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
你可用在启动的时候不载入数据源配置。url
可用在启动类上面,添加下面的注解。spa
@SpringBootApplication(exclude={DataSourceAutoConfiguration.class})
你也能够在启动配置文件上面,添加下面的内容,这样可以保证你在启动的时候不载入数据源配置类。
spring.autoconfigure.exclude=org.springframework.boot.autoconfigure.jdbc.DataSourceAuto