Reports autowiring problems on injection points of Spring beans @Component, @Service, and so on.

Example:


public interface FooInterface {...}
  @Component public class FooBean implements FooInterface {...}
  @Component public class OtherBean implements FooInterface {...}

@Component
public class MyComponent {
	@Autowired
	FooInterface foo;  // "Could not autowire. There is more than one bean of 'FooInterface' type.
                     // Beans: fooBean(FooBean.java), otherBean(OtherBean.java)"
}

Example:


@Component
public class MyComponent {
	@Autowired
	public MyComponent(BarBean bean) {...} // reports 'Only one @Autowired constructor is allowed'

	@Autowired
	public MyComponent(FooBean bean) {...} // reports 'Only one @Autowired constructor is allowed'
}

@Component
public class MyFactory {  // reports ' No matching @Autowired constructor'
	public MyFactory(String str) {...}
	public MyFactory(int count) {...}
}

Example:


public class FooBeanClass {
  @Autowired   // reports 'Autowired members must be defined in valid Spring beans: @Component, @Service, and so on'
  ServiceBean bean;
  }