A <context:component-scan/>
custom tag registers the same set of bean definitions as is done by , apart from its primary responsibility of scanning the java packages and registering bean definitions from the classpath.
If for some reason this registration of default bean definitions are to be avoided, the way to do that is to specify an additional "annotation-config" attribute in component-scan, this way:
<context:component-scan basePackages="" annotation-config="false"/>
Reference: http://www.java-allandsundry.com/2012/12/contextcomponent-scan-contextannotation.html