0

I'm having trouble running a custom jar on Elastic Map-Reduce

I'm using jdk1.6.0_26, Hadoop 0.20.205, and compiling with Eclipse on my computer and everything works perfectly fine

for example if I ran the following on my computer it would be successful hadoop jar MaxTemperature.jar input/temperature.txt output

I specified the jar as the following on AWS s3n://chrishadoop/MaxTemperature.jar

and I specified the arguments as s3n://chrishadoop/input/temperature.txt s3n://chrishadoop/output

I did not specify the main class because I pointed to it in the manifest

Here is the jar I'm using, I will make it public for a little while

https://s3.amazonaws.com/chrishadoop/MaxTemperature.jar

Here is the error I'm getting

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
4

1 回答 1

0

有一个作为 AMI 的一部分安装的 Jackson 版本,我猜你正在捆绑不同版本的 Jackson?该错误似乎发生在使“启用调试”工作的支持代码中。

于 2012-07-09T01:39:48.337 回答