2017-06-13 1592 views
0

我尝试通过我的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> 
+0

再次阅读堆栈跟踪。它抱怨'属性'driverClassName'抛出异常;'我看不到这个属性? –

+0

我在db.properties文件中保留了这个属性 –

+0

它只取得这个属性值db.class = org.apache.hive.jdbc.HiveDriver –

回答

0

您使用了错误的驱动程序类名,因此错误。您需要替换

db.driver=org.apache.hive.jdbc.HiveDriver 

db.driver=org.apache.hadoop.hive.jdbc.HiveDriver 

这个你可以参考驱动程序文档here,以防万一你需要的。

希望这能解决您的问题!

+0

我试过并得到了下面的错误无法加载JDBC驱动类[org。 apache.hadoop.hive.jdbc.HiveDriver]和你的信息我已经创建了一个java程序使用这个org.apache.hive.jdbc.HiveDriver驱动程序类的名称,这工作正常。但是当我尝试与我的web应用程序我得到如规定的例外upper.For这两种情况下我已经添加了 \t \t \t org.apache.hive \t \t \t 蜂巢-JDBC依赖\t \t \t 2.1.1 \t \t

+0

您说您有一个web应用程序的权利问题,那么驱动jar应该是你的WEB-INF/lib文件夹中的一部分。 –

+0

是的,我已经添加了依赖关系,请检查我的帖子,我已经更新 –

相关问题