2012-02-09 5 views
0

Quelqu'un peut-il me dire ce que cette erreur signifie? et comment puis-je obtenir la sortie?Hadoop erreur de programme d'index inversé

Exception in thread "main" java.lang.ClassNotFoundException: org.myorg.LineIndexer 
    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) 
    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) 

C'est le code que je veux exécuter:

http://code.google.com/p/hadoop-excercise/source/browse/trunk/lineindexer/LineIndexer.java?spec=svn15&r=15

Répondre

0

est la classe inclus dans votre pot? Cela ne semble pas être le cas.

Donc, vous devez inclure la classe dans le pot, vous passez en commençant le travail.

0

J'ai suivi les étapes suivantes et cela a fonctionné. PS: Assurez-vous d'avoir un fichier sample.txt dans HDFS et LineIndexer.java dans le répertoire courant.

javac -classpath $HADOOP_HOME/hadoop-core.jar *.java 
jar cvf li.jar *.class 
hadoop jar ii.jar LineIndexer sample.txt li1 
hadoop fs -cat li1/part-00000