Reputation: 1
I am also add all jars file of usr/local/share/hadoop/mapreduce/*jars, usr/local/hadoop/common, hive-exec-xxx.jar, hive-metastore-xxx.jar and hive-jdbc-xxx.jar.
hive terminal working well.
My code is:
private static String driverName = "org.apache.hadoop.hive.jdbc.HiveDriver";
try {
Class.forName(driverName);
Connection con;
con = DriverManager.getConnection("jdbc:hive://localhost:10000/default", "", "");
Statement stmt = con.createStatement();
stmt.executeQuery("CREATE DATABASE demodb");
System.out.println("Database userdb created successfully.");
con.close();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
exception:
java.lang.ClassNotFoundException: org.apache.hadoop.hive.jdbc.HiveDriver
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at hive.CRUDHive.main(CRUDHive.java:15)
Upvotes: 0
Views: 8293
Reputation: 1882
Make Sure which jar (hive ) do you want .. because it has diferent versions The old verison jar is
org.apache.hadoop.hive.jdbc.HiveDriver
here is the mvnrepository
and the newest jar is org.apache.hive.jdbc.HiveDriver
here is the new settings
check your dependency please
Upvotes: 5
Reputation: 1809
In your code the driver class for hive is mentioned incorrectly. It shoul d be as below
private static String driverName = "org.apache.hive.jdbc.HiveDriver";
If the above change doesn't solve your problem then it means the jar files are not on the classpath which you need to add explicitely.
For the maven based project you can just add the dependency for hive-jdbc jar.
If you are not using maven then in eclipse do the following steps:
Select Project -> Build Path -> Configure Build Path -> Libraries -> Add external Jars -> Select path of hive-jdbc/hive-exec/hive-service jars
Along with hive jars you will need to add other dependent jars as a http-core, http-client, hadoop-common, commons-logging, slf4j jars.
Upvotes: 0