我正在使用ubuntu 11.10。
我使用
下载了mahout_trunk“svn co http://svn.apache.org/repos/asf/mahout/trunk”
目录/ opt中的。 之后我使用“mvn install”命令。
我已经将linked-simple-sorted.txt放在hdfs中。 并且还将users.txt放在hdfs的输入目录中。
进入/ opt / mahout / core目录后。
当我尝试使用“mvn clean package”构建mahout-core-0.7-SNAPSHOT.job时。 它不会创建任何mahout-core-0.7-SNAPSHOT.job。
我只看到mahout-core-0.7-SNAPSHOT.jar,mahout-core-0.7-SNAPSHOT-job.jar,mahout-core-0.7-SNAPSHOT-tests.jar。
当我试图从这个命令运行时:
hduser@ubuntu:/usr/local/hadoop$ bin/hadoop jar /opt/mahout/core/target/mahout-core-0.7-SNAPSHOT.jar org.apache.mahout.cf.taste.hadoop.item.RecommenderJob -Dmapred.input.dir=input/input.txt -Dmapred.output.dir=output --usersFile input/users.txt --booleanData
我收到了以下错误。
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/commons/cli2/Option
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)
Caused by: java.lang.ClassNotFoundException: org.apache.commons.cli2.Option
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
如果我尝试使用此命令运行:
hduser@ubuntu:/usr/local/hadoop$ bin/hadoop jar /opt/mahout/core/target/mahout-core-0.7-SNAPSHOT.job org.apache.mahout.cf.taste.hadoop.item.RecommenderJob -Dmapred.input.dir=input/input.txt -Dmapred.output.dir=output --usersFile input/users.txt --booleanData
我收到以下错误:
Exception in thread "main" java.io.IOException: Error opening job jar: /opt/mahout/core/target/mahout-core-0.7-SNAPSHOT.job
at org.apache.hadoop.util.RunJar.main(RunJar.java:90)
Caused by: java.util.zip.ZipException: error in opening zip file
at java.util.zip.ZipFile.open(Native Method)
at java.util.zip.ZipFile.<init>(ZipFile.java:131)
at java.util.jar.JarFile.<init>(JarFile.java:150)
at java.util.jar.JarFile.<init>(JarFile.java:87)
at org.apache.hadoop.util.RunJar.main(RunJar.java:88)
我尝试了很多。但是,不要出现这个错误。
我该怎么做?
您的帮助将不胜感激。
还有其他方法可以对hadoop进行推荐吗?
答案 0 :(得分:1)
你就在那里。它的-job.jar文件不是.job