java.lang.ClassNotFoundException: org.apache.hive.jdbc.HiveDriver
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:190)
at db.HiveJdbcClient.getSalesDataByHive(HiveJdbcClient.java:73)
at task.SalesdataImportOL.excuteImportSalesData(SalesdataImportOL.java:17)
at task.SalesdataImportOL.run(SalesdataImportOL.java:29)
at java.lang.Thread.run(Thread.java:745)
error
java.lang.NullPointerException
at task.SalesdataImportOL.excuteImportSalesData(SalesdataImportOL.java:18)
at task.SalesdataImportOL.run(SalesdataImportOL.java:29)
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:425)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:358)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:190)
at db.HiveJdbcClient.getSalesDataByHive(HiveJdbcClient.java:73)
at task.SalesdataImportOL.excuteImportSalesData(SalesdataImportOL.java:17)
at task.SalesdataImportOL.run(SalesdataImportOL.java:29)
at java.lang.Thread.run(Thread.java:745)
error
java.lang.NullPointerException
at task.SalesdataImportOL.excuteImportSalesData(SalesdataImportOL.java:18)
at task.SalesdataImportOL.run(SalesdataImportOL.java:29)
at java.lang.Thread.run(Thread.java:745)
这个问题是确实jar问题
用eclipse开发工具 打jar 执行shell脚本的main函数之后初始化加载程序需要信息,在去加载lib的中jar查不到,后来我直接在打jar的时候顺便把lib下的jar也打上去 程序就没有问题