You are probably naming your implementation class wrong.
Note that the naming expectations changed with Spring Data 2.0.
For < 2.0 the implementation had to be named as the final repository interface with an additional Impl
suffix. See the matching reference documentation for an example.
For >= 2.0 the implementation has to be named as the custom interface with an additional Impl
suffix. See the current reference documentation for an example.
Note: You don't need any of the @Repository
annotations.