我在Hadoop中編寫程序,它使用MySql從dfs中讀取數據。我在運行時收到此消息:Hadoop不加載jdbc驅動程序
java.lang.ClassNotFoundException: com.mysql.jdbc.Driver
at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at ConnectDtb.<init>(ConnectDtb.java:14)
at WriteToDtb.<init>(WriteToDtb.java:14)
at WriteToDtb.main(WriteToDtb.java:61)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
當我在沒有Hadoop的情況下運行它時,我沒有收到此錯誤。
我已經把mysql-connector.jar
設置爲$Hadoop/lib
,試圖用-libjars <mysql-connector path>
來運行,但也失敗了。
請檢查該http://stackoverflow.com/questions/2591505/java-lang-classnotfoundexception-com-mysql-jdbc-driver –
改進的問題 – Jerome