无法在配置单元中加载JDBC驱动程序类[org.apache.hive.jdbc.HiveDriver]
我尝试通过我的spring应用程序连接配置单元。我使用MYSQL server配置了配置单元。我使用了以下属性进行数据库配置。无法在配置单元中加载JDBC驱动程序类[org.apache.hive.jdbc.HiveDriver]
db.dialect=org.hibernate.dialect.MySQLDialect
db.driver=org.apache.hive.jdbc.HiveDriver
db.url=jdbc:hive2://localhost:10000/MY_DATABASE
db.class=org.apache.hive.jdbc.HiveDriver
db.user=hadoop
db.password=hadoop
这是我在db.properties文件中使用的。但是当运行应用程序时,我得到了下面的异常。
PropertyAccessException 1: org.springframework.beans.MethodInvocationException: Property 'driverClassName' threw exception; nested exception is java.lang.IllegalStateException: Could not load JDBC driver class [org.apache.hive.jdbc.HiveDriver]
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:328)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:106)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveManagedList(BeanDefinitionValueResolver.java:353)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:153)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1360)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1118)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:517)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:456)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:294)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:225)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:291)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:193)
在pom.xml中我已经添加下面的依赖
<dependency>
<groupId>org.apache.hive</groupId>
<artifactId>hive-jdbc</artifactId>
<version>2.1.1</version>
</dependency>
您使用了错误的驱动程序类名,因此错误。您需要替换
db.driver=org.apache.hive.jdbc.HiveDriver
与
db.driver=org.apache.hadoop.hive.jdbc.HiveDriver
这个你可以参考驱动程序文档here,以防万一你需要的。
希望这能解决您的问题!
我试过并得到了下面的错误无法加载JDBC驱动类[org。 apache.hadoop.hive.jdbc.HiveDriver]和你的信息我已经创建了一个java程序使用这个org.apache.hive.jdbc.HiveDriver驱动程序类的名称,这工作正常。但是当我尝试与我的web应用程序我得到如规定的例外upper.For这两种情况下我已经添加了
您说您有一个web应用程序的权利问题,那么驱动jar应该是你的WEB-INF/lib文件夹中的一部分。 –
是的,我已经添加了依赖关系,请检查我的帖子,我已经更新 –
再次阅读堆栈跟踪。它抱怨'属性'driverClassName'抛出异常;'我看不到这个属性? –
我在db.properties文件中保留了这个属性 –
它只取得这个属性值db.class = org.apache.hive.jdbc.HiveDriver –