Не удалось запустить Java-пример проблемы WordCount-Compiler - PullRequest
0 голосов
/ 01 марта 2012

Упомянутая ниже ошибка, которую я получаю при попытке выполнить Java-версию WordCout.Мне удалось скомпилировать то же самое успешно, но я не могу понять, почему он сейчас пишет.Я перепробовал все комбинации пути к библиотеке, подумав о проблеме зависимости, но все же застрял.Любая помощь будет оценена.

root@ubuntu:/opt/hadoop# java -cp lib/commons-cli-1.2.jar:hadoop-core-1.0.0.jar . /src/examples/org/apache/hadoop/examples/WordCount
Exception in thread "main" java.lang.NoClassDefFoundError: /
Caused by: java.lang.ClassNotFoundException: .
    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 sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: .. Program will exit.
root@ubuntu:/opt/hadoop#.

Ответы [ 4 ]

1 голос
/ 01 марта 2012

Когда вы запускаете программу на Java, вам нужно указать фактический класс, который вы выполняете.Пока что у вас есть следующее:

java -cp lib/commons-cli-1.2.jar:hadoop-core-1.0.0.jar .

Все это говорит о том, что эти два JAR-файла должны быть в CLASSPATH, и что вы пытаетесь запустить некоторый класс с именем ".".конечно, нет такого класса с именем "." . должно быть именем класса, который вы пытаетесь запустить, а не ..Этот класс должен иметь main() метод внутри него.

1 голос
/ 01 марта 2012

Подсказка:

Caused by: java.lang.ClassNotFoundException: .

java пытается сообщить вам, что не может найти класс с именем .

0 голосов
/ 02 марта 2012

Поскольку пример WordCount предназначен для запуска задания MapReduce, его следует запускать со следующим:

bin/hadoop jar hadoop-*-examples.jar wordcount [-m <#maps>] [-r <#reducers>] <in-dir> <out-dir>

Это настроит для вас classpath.

См. http://wiki.apache.org/hadoop/WordCount

0 голосов
/ 01 марта 2012

Попробуйте удалить "." в вашей команде.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...