我設法運行hadoop示例grep,wordcount ...但是我發現一些困難時刻試圖讓我自己的代碼運行...
這就是我所擁有的完成;ClassNotFoundException當我在Hadoop上運行我自己的代碼
我複製了示例jar中的grep代碼,並對其進行了自己的更改。我使用命令javac編譯它;我可以在文件夾中看到我指定的層次結構「org/apache/hadoop/examples/filename.class」
然後我將它(文件夾)打包到一個jar中;在現在組織/阿帕奇/ ..... 現在,當我運行該命令的「bin/hadoop的罐子folder.jar文件名輸入輸出」 我不斷收到此錯誤:
Exception in thread "main" java.lang.ClassNotFoundException:....
什麼想法?或指導?
ç你發佈完整的堆棧跟蹤和jar文件內容列表(jar -tvf folder.jar) – 2012-03-27 21:32:09
當我執行jar -tvf folder.jar命令時,我得到了這一行 「3503 Tue Mar 27 19:29: 30 GST 2012組織/阿帕奇/ hadoop的/示例/ Grep.class」 – 2012-03-27 21:50:22
,這是跟蹤: 異常在線程 「主」 拋出java.lang.ClassNotFoundException:用grep \t在java.net.URLClassLoader的$ 1.run(URLClassLoader的的.java:366) \t在java.net.URLClassLoader的$ 1.run(URLClassLoader.java:355) \t在java.security.AccessController.doPrivileged(本機方法) \t在java.net.URLClassLoader.findClass(URLClassLoader的。 java:354) \t在java.lang.ClassLoader.loadClass(ClassLoader.java:423) \t在java.lang.ClassLoader.loadClass(ClassLoader.java:356) \t在java.lang.Class.forName0(本機方法) \t在java.lang.Class.forName(Class.java:264) \t at org.apache.hadoop.util.RunJar.main(RunJar。java:149) – 2012-03-27 21:50:54