Java 多个配置文件-spring bean注入

Java 多个配置文件-spring bean注入,java,spring,profiles,Java,Spring,Profiles,我得到一个错误,这个bean类不能被实例化,应该给出一个默认的构造函数。为何要这样做呢?我有两种不同的接口实现,应该根据活动概要文件加载。配置应使用注释完成。默认构造函数是没有参数的构造函数 根据错误消息,我假设该类是通过反射创建的。 因此,您必须提供一种通过反射创建类的方法 我假设构造函数中assemblerFile的值不能通过反射来确定,因此会调用默认构造函数,但没有提供 @Service public interface DatabaseConnector { public Mod

我得到一个错误,这个bean类不能被实例化,应该给出一个默认的构造函数。为何要这样做呢?我有两种不同的接口实现,应该根据活动概要文件加载。配置应使用注释完成。

默认构造函数是没有参数的构造函数

根据错误消息,我假设该类是通过反射创建的。 因此,您必须提供一种通过反射创建类的方法

我假设构造函数中assemblerFile的值不能通过反射来确定,因此会调用默认构造函数,但没有提供

@Service
public interface DatabaseConnector {
    public Model getModel();
}

@Configuration
@Profile({"!test"})
public class DatabaseConnectorT implements DatabaseConnector {

    private final Model model;

    @Autowired
    public DatabaseConnectorT(@Value("${assemblerFile}") String assemblerFile) {
        model = TDBFactory.assembleModel(assemblerFile);
    }
}