Hi,

If your goal is to use the new API, I am able to get it to work with the
following maven configuration:

    <dependency>
      <groupId>org.apache.mrunit</groupId>
      <artifactId>mrunit</artifactId>
      <version>0.9.0-incubating</version>
      <classifier>hadoop1</classifier>
    </dependency>

If I switch with classifier hadoop2, I get the same errors as what you
facing.

Thanks
Hemanth


On Sat, Apr 20, 2013 at 3:42 PM, 姚吉龙 <geelong...@gmail.com> wrote:

> Hi Everyone
>
> I am testing my MR programe with MRunit, it's version
> is mrunit-0.9.0-incubating-hadoop2. My hadoop version is 1.0.4
> The error trace is below:
>
> java.lang.IncompatibleClassChangeError: Found class
> org.apache.hadoop.mapreduce.TaskInputOutputContext, but interface was
> expected
> at
> org.apache.hadoop.mrunit.mapreduce.mock.MockContextWrapper.createCommon(MockContextWrapper.java:53)
>  at
> org.apache.hadoop.mrunit.mapreduce.mock.MockMapContextWrapper.create(MockMapContextWrapper.java:70)
> at
> org.apache.hadoop.mrunit.mapreduce.mock.MockMapContextWrapper.<init>(MockMapContextWrapper.java:62)
>  at org.apache.hadoop.mrunit.mapreduce.MapDriver.run(MapDriver.java:217)
> at org.apache.hadoop.mrunit.MapDriverBase.runTest(MapDriverBase.java:150)
>  at org.apache.hadoop.mrunit.TestDriver.runTest(TestDriver.java:137)
> at UnitTest.testMapper(UnitTest.java:41)
>  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 junit.framework.TestCase.runTest(TestCase.java:168)
> at junit.framework.TestCase.runBare(TestCase.java:134)
>  at junit.framework.TestResult$1.protect(TestResult.java:110)
> at junit.framework.TestResult.runProtected(TestResult.java:128)
>  at junit.framework.TestResult.run(TestResult.java:113)
> at junit.framework.TestCase.run(TestCase.java:124)
>  at junit.framework.TestSuite.runTest(TestSuite.java:232)
> at junit.framework.TestSuite.run(TestSuite.java:227)
>  at
> org.junit.internal.runners.JUnit38ClassRunner.run(JUnit38ClassRunner.java:79)
> at
> org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
>  at
> org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:467)
>  at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:683)
> at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:390)
>  at
> org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:197)
>
>
> Anyone has idea?
>
> BRs
> Geelong
>
> --
> From Good To Great
>

Reply via email to