Проблема при выполнении кода hadoop - PullRequest
0 голосов
/ 28 сентября 2010

Я только начал с Hadoop. Я написал пример кода Hadoop, как было написано в книге. Но все же во время исполнения исключения возникают. Фрагмент того, что я получаю:

[harsh @ geek hadoop-0.20.2] $ hadoop Макс. Температура ввода / вывода ncdc / sample.txt Исключение в потоке "main" java.lang.NoClassDefFoundError: MaxTempera Вызывается: java.lang.ClassNotFoundException: MaxTempera на java.net.URLClassLoader $ 1.run (URLClassLoader.java:202) at java.security.AccessController.doPrivileged (собственный метод) в java.net.URLClassLoader.findClass (URLClassLoader.java:190) в java.lang.ClassLoader.loadClass (ClassLoader.java:307) at sun.misc.Launcher $ AppClassLoader.loadClass (Launcher.java:301) в java.lang.ClassLoader.loadClass (ClassLoader.java:248) Не удалось найти основной класс: MaxTempera. Программа закроется.

Что мне делать?

Ответы [ 6 ]

0 голосов
/ 21 февраля 2014

Сначала для Map Reduce Execution необходимо создать Jar-файл с классами, т. Е. Mapper, Reducer, Driver class. Переместитесь в папку, где находится jar-файл, и выполните

bin/hadoop Sample.jar SampleDriver InputFileName OutPutFileName

Попробуй. Работать с этими потоками надо.

0 голосов
/ 25 февраля 2013

Вы положили MaxTempera в пакет?

Если это так, скажите, что ваш файл MaxTemperature.class находится в yourdir/bin/yourpackage/.Вам нужно сделать:

export HADOOP_CLASSPATH=yourdir/bin
hadoop yourpackage.MaxTemperature
0 голосов
/ 18 мая 2012

Я испытал то же самое. Я задокументировал пошаговое решение для http://digitallibraryworld.com/?p=256. Надеюсь, это кому-нибудь поможет

0 голосов
/ 08 декабря 2011

Он всегда ищет точку входа, которая является основным классом, фрагмент кода, который устанавливает класс вашего преобразователя и преобразователя. Если он не может его найти, он генерирует исключение classnotfound.

0 голосов
/ 29 сентября 2010

Когда вы запускаете jar hadoop, это команда, которую вы должны выполнить в каталоге, в который вы поместили jar (например, /usr/lib/hadoop-0.20/bin)

  • hadoop jar NAMEOFJAR.jar arg1 arg2 argN

из вашего вопроса это может быть как запустить его (создайте каталог cd to hadoop для версии hadoop, в которой вы работаете)

  • cp MaxTempera.jar /usr/lib/hadoop-0.20/bin
  • su hadoop
  • cd /usr/lib/hadoop-0.20/bin
  • hadoop jar MaxTempera.jar input /Вывод ncdc / sample.txt
0 голосов
/ 28 сентября 2010

Добавьте класс MaxTeuration к вашему пути к классам.

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