Hi, I think you have to download the source distribution and build the JARs for Hadoop 2:
$ mvn clean install -Dcrunch.platform=2 -DskipTests Does it work then? Regards, Matthias On Tuesday, 2012-11-27, Johnny Zhang wrote: > Hi, All: > I am trying to run Crunch 0.4.0 with Hadoop 2.0.0. I got the error below: > > Exception in thread "main" java.lang.IncompatibleClassChangeError: Found > interface org.apache.hadoop.mapreduce.JobContext, but class was expected > at > org.apache.crunch.hadoop.mapreduce.lib.output.CrunchMultipleOutputs.getNamedOutputsList(CrunchMultipleOutputs.java:210) > at > org.apache.crunch.hadoop.mapreduce.lib.output.CrunchMultipleOutputs.checkNamedOutputName(CrunchMultipleOutputs.java:197) > at > org.apache.crunch.hadoop.mapreduce.lib.output.CrunchMultipleOutputs.addNamedOutput(CrunchMultipleOutputs.java:256) > at > org.apache.crunch.io.impl.FileTargetImpl.configureForMapReduce(FileTargetImpl.java:65) > at > org.apache.crunch.io.text.TextFileTarget.configureForMapReduce(TextFileTarget.java:70) > at > org.apache.crunch.impl.mr.plan.MSCROutputHandler.configure(MSCROutputHandler.java:63) > at org.apache.crunch.io.impl.FileTargetImpl.accept(FileTargetImpl.java:71) > at > org.apache.crunch.io.impl.SourceTargetImpl.accept(SourceTargetImpl.java:58) > at > org.apache.crunch.impl.mr.plan.MSCROutputHandler.configureNode(MSCROutputHandler.java:51) > at org.apache.crunch.impl.mr.plan.JobPrototype.build(JobPrototype.java:138) > at > org.apache.crunch.impl.mr.plan.JobPrototype.getCrunchJob(JobPrototype.java:114) > at org.apache.crunch.impl.mr.plan.MSCRPlanner.plan(MSCRPlanner.java:111) > at org.apache.crunch.impl.mr.MRPipeline.plan(MRPipeline.java:144) > at org.apache.crunch.impl.mr.MRPipeline.run(MRPipeline.java:154) > at org.apache.crunch.impl.mr.MRPipeline.done(MRPipeline.java:183) > at org.apache.crunch.examples.WordCount.run(WordCount.java:70) > at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) > at org.apache.crunch.examples.WordCount.main(WordCount.java:76) > at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) > at > sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) > at > sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) > at java.lang.reflect.Method.invoke(Method.java:597) > at org.apache.hadoop.util.RunJar.main(RunJar.java:208) > > Looks like JobContext is expected a class, but Hadoop 2.0.0 change it to a > interface. > > Does anyone has the similar experience? Any suggestion? Thanks a lot. > > Johnny Zhang
