我有很多代码看起来像这样
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class ConfigurationBase<T>
{
public @Bean(name="S1") T getS1() { return null; }
public @Bean(name="S2") T getS2() { return null; }
}
派生类看起来像这样:
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
public class ConfigurationDerived extends ConfigurationBase<String>
{
@Override
public String getS1() { return "S1+++"; }
public @Bean(name="S3") String getS3() { return "S3"; }
public @Bean(name="ID") String getCompositeName(
@Qualifier("S1") String s1,
@Qualifier("S2") String s2,
@Qualifier("S3") String s3)
{
return "hello!";
}
}
当基类不是通用的时,IntelliJ能够找到所有Spring依赖项。
但是当在这个例子中,基类是通用的,它找不到基类中定义的bean
例如,在这里,它不会找到bean“S1”和“S2”
有解决方法吗?