Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何解决无法在spring boot应用程序中加载驱动程序类:org.h2.driver的问题?_Java_Spring_Spring Boot - Fatal编程技术网

Java 如何解决无法在spring boot应用程序中加载驱动程序类:org.h2.driver的问题?

Java 如何解决无法在spring boot应用程序中加载驱动程序类:org.h2.driver的问题?,java,spring,spring-boot,Java,Spring,Spring Boot,我面临着这个错误: Error creating bean with name 'org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaConfiguration': Unsatisfied dependency expressed through constructor parameter 0; nested exception is org.springframework.beans.factory.BeanCr

我面临着这个错误:

Error creating bean with name 
'org.springframework.boot.autoconfigure.orm.jpa.HibernateJpaConfiguration': Unsatisfied dependency expressed through constructor parameter 0;      
 nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'dataSource' defined in class path resource [org/springframework/boot/autoconfigure/jdbc/DataSourceConfiguration$Hikari.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [com.zaxxer.hikari.HikariDataSource]: Factory method 'dataSource' threw exception; nested exception is java.lang.IllegalStateException: Cannot load driver class: org.h2.Driver
为什么我要面对这个问题

以下是pom.xml文件:


4.0.0
org.springframework.boot
spring启动程序父级
2.3.3.2发布
com.wipro.boot
H2样品
0.0.1-快照
战争
演示
SpringBoot的演示项目
1.8
org.springframework.boot
spring引导启动器数据jpa
org.springframework.boot
SpringBootStarterWeb
com.h2数据库
氢
测试
org.springframework.boot
弹簧启动机tomcat
假如
org.springframework.boot
弹簧起动试验
测试
org.junit.vintage
朱尼特老式发动机
org.springframework.boot
springbootmaven插件
以下是application.properties文件:

spring.h2.console.enabled=true
spring.datasource.url=jdbc:h2:mem:testdb
spring.datasource.driverClassName=org.h2.Driver
spring.datasource.username=sa
spring.datasource.password=password
spring.jpa.database-platform=org.hibernate.dialect.H2Dialect

您在
测试
范围中声明h2驱动程序,这意味着它仅在测试用例执行期间可用

如果您希望h2驱动程序在正常执行应用程序时也可用,请将其范围更改为默认范围(即
compile
),这样可以解决问题:


com.h2数据库
氢

使jar在运行时可用

修改pom.xml中h2依赖项的范围:

<dependency>
    <groupId>com.h2database</groupId>
    <artifactId>h2</artifactId>
    <scope>runtime</scope>
</dependency>

com.h2数据库
氢
运行时

您在测试执行过程中遇到错误了吗?@sriramkailash这可以吗?错误已解决:我将spring boot starter父级的版本从2.3.3更改为2.0.0,并且工作正常。谢谢@anish的帮助help@sriramkailash,您是否更改了依赖项的范围?@SantosshKumhar是的,我也将依赖项的范围更改为运行时。