Elastic Map-Reduce でカスタム jar を実行できません
jdk1.6.0_26、Hadoop 0.20.205 を使用しており、コンピューターで Eclipse を使用してコンパイルしていますが、すべて問題なく動作します。
たとえば、自分のコンピューターで次のコマンドを実行すると、hadoop jar MaxTemperature.jar input/temperature.txt output が成功します。
AWS s3n://chrishadoop/MaxTemperature.jar で jar を次のように指定しました。
引数を s3n://chrishadoop/input/temperature.txt s3n://chrishadoop/output として指定しました
マニフェストで指定したため、メインクラスを指定しませんでした
これが私が使用しているjarです。しばらく公開します
https://s3.amazonaws.com/chrishadoop/MaxTemperature.jar
ここに私が得ているエラーがあります
2012-07-08 19:31:39,824 INFO com.amazonaws.elasticmapreduce.statepusher.StatePusher (main): Pusher awoke, starting to push data into simpledb...
2012-07-08 19:31:40,552 FATAL com.amazonaws.elasticmapreduce.statepusher.StatePusher (main): Fatal Exception raised while extracting data from hadoop and pushing to simpledb
java.lang.NoClassDefFoundError: org/codehaus/jackson/map/JsonMappingException
at com.amazonaws.elasticmapreduce.statepusher.StatePusher.run(StatePusher.java:65)
at com.amazonaws.elasticmapreduce.statepusher.StatePusher.main(StatePusher.java:205)
Caused by: java.lang.ClassNotFoundException: org.codehaus.jackson.map.JsonMappingException
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
... 2 more