我使用以下语句使用此博客中的java文件创建了一个jar文件
javac -classpath /usr/local/hadoop/hadoop-core-1.0.3.jar -d /home/hduser/dir Dictionary.java
/usr/lib/jvm/jdk1.7.0_07/bin/jar cf Dictionary.jar /home/hduser/dir
现在我尝试通过命中和试验各种命令在hadoop中运行这个jar
1hduser@ubuntu:~$ /usr/local/hadoop/bin/hadoop jar Dictionary.jar
输出:
Warning: $HADOOP_HOME is deprecated.
RunJar jarFile [mainClass] args...
Run Code Online (Sandbox Code Playgroud)
2.hduser@ubuntu:~$ /usr/local/hadoop/bin/hadoop jar Dictionary.jar Dictionary
输出:
Warning: $HADOOP_HOME is deprecated.
Exception in thread "main" java.lang.ClassNotFoundException: Dictionary
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:423)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:264)
at org.apache.hadoop.util.RunJar.main(RunJar.java:149)
Run Code Online (Sandbox Code Playgroud)
我怎么能在hadoop中运行jar?根据我的程序需要,我有正确的DFS位置.