我是因为把我自己定义的bean当成key从map端传到reduce端了,但是我没有针对实现的WritableComparable接口,而是实现的Writable和Comparable接口(讲道理WritableComparable接口也是对这两个接口做了整合,为什么我分别实现就不行呢?),然后报了这个错误。
这种错误有两种原因,一个是网上说的导包错误,比如Text是要导hadoop.io下面的,而不是其它的包,第二个就是map端传出来的key要求是可比较的,实现WritableComparable接口,重写compareto方法,不然map端的shuffle无法进行。