2017-06-13 1589 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

是的,我已經添加了依賴關係,請檢查我的帖子,我已經更新 –

相關問題