[英]java.lang.NoClassDefFoundError: org/apache/hadoop/hdfs/server/namenode/NameNode
[英]java.lang.NoClassDefFoundError: org/apache/hadoop/hdfs/BenchmarkThroughput
我嘗試在CDH4.4上運行TestDFSIO,我是通過命令行(而不是Cloudera Manager)啟動的。 這是我運行的命令:
bin/hadoop jar hadoop-test-2.0.0-mr1-cdh4.4.0-SNAPSHOT.jar TestDFSIO -Ddfs.replication=1 -write -nrFiles 2 -fileSize 4000
這是我得到的錯誤:
java.lang.NoClassDefFoundError: org/apache/hadoop/hdfs/BenchmarkThroughput
at org.apache.hadoop.test.AllTestDriver.main(AllTestDriver.java:74)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.apache.hadoop.util.RunJar.main(RunJar.java:208)
Caused by: java.lang.ClassNotFoundException: org.apache.hadoop.hdfs.BenchmarkThroughput
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:424)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 6 more
有任何想法嗎?
此類是HDFS測試代碼的一部分,而不是主HDFS庫。 您不會在群集的類路徑上自動找到它。
測試代碼作為Hadoop的編譯工件發布,但只是不同的工件。 CDH也不例外。 對於CDH 4.4,可以在工件hadoop-hdfs-2.0.0-cdh4.4.0-tests.jar
中找到HDFS測試類, hadoop-hdfs-2.0.0-cdh4.4.0-tests.jar
,可以在您的Maven構建中依賴hadoop-hdfs-2.0.0-cdh4.4.0-tests.jar
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.