如果不引入最后两个包会报错:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/collections/map/UnmodifiableMap
at org.apache.hadoop.conf.Configuration$DeprecationContext.<init>(Configuration.java:394)
at org.apache.hadoop.conf.Configuration.<clinit>(Configuration.java:432)
at org.apache.hadoop.hive.jdbc.HiveQueryResultSet.initSerde(HiveQueryResultSet.java:111)
at org.apache.hadoop.hive.jdbc.HiveQueryResultSet.<init>(HiveQueryResultSet.java:66)
at org.apache.hadoop.hive.jdbc.HiveStatement.executeQuery(HiveStatement.java:198)
at org.apache.hadoop.hive.jdbc.HiveStatement.execute(HiveStatement.java:132)
at org.apache.hadoop.hive.jdbc.HiveConnection.configureConnection(HiveConnection.java:132)
at org.apache.hadoop.hive.jdbc.HiveConnection.<init>(HiveConnection.java:122)
at org.apache.hadoop.hive.jdbc.HiveDriver.connect(HiveDriver.java:106)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at com.yinhai.hive.HiveConnTest.main(HiveConnTest.java:25)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.collections.map.UnmodifiableMap
at java.net.URLClassLoader$1.run(Unknown Source)
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 12 more
在使用Hive JDBC进行连接时,若不包含特定jar包,如org.apache.commons.collections.map.UnmodifiableMap,会导致运行时异常。这些缺失的依赖会导致配置初始化失败,进而影响HiveQueryResultSet和HiveStatement等关键操作。确保引入所有必需的jar包以避免此类NoClassDefFoundError。
2240

被折叠的 条评论
为什么被折叠?



