Hadoop 실행시 jar 파일 추가하기

Hadoop 명령 중에 jar 명령을 쓰면 jar 파일로 만든 Map Reduce 프로그램을 실행시킬 수 있다.

Usage: hadoop jar <jar> [mainClass] args...

실행시키고자 jar 패키지가 다른 jar 파일을 참조한다면 -libjars 옵션을 쓰면 된다.
-libjars <comma seperated list of jars>

물론 실행하려는 jar 파일에 몽땅 때려넣고 실행 시켜도 되지만, 여러 패키지에서 참조하는 jar라면 따로 분리해서 관리하는 것이 편리할 때도 있다.

그런데 -libjars 옵션을 줘도 하둡 실행시 참조하는 파일을 인식못하는 경우가 발생했는데 클래스패스(HADOOP_CLASSPATH)를 지정 해서 해결했다.

Wordcount 로 예를 들면,
HADOOP_CLASSPATH=mylib.jar hadoop jar hadoop-examples.jar wordcount -libjars mylib.jar input output