I created a interface which has not any implementations
JavaScript
x
@Service
public interface MyInterface{
default void doSomething{
System.out.print("print something");
}
}
Can MyInterface be annotated by @Autowired?
JavaScript
@Autowired
MyInterface myInterFace;
following error displayed when it run
JavaScript
***************************
APPLICATION FAILED TO START
***************************
Description:
Field myInterFace in com.example.demo.controller.corejava.CoreJavaController required a bean of type 'com.example.demo.controller.corejava.MyInterface' that could not be found.
The injection point has the following annotations:
- @org.springframework.beans.factory.annotation.Autowired(required=true)
Advertisement
Answer
No you can’t, because Spring tries to instantiate it to create a Bean (@Service), but it’s an Interface, so thats not possible.