我正在尝试找到一种在 quarkus DI 中以编程方式创建 bean 的方法,但没有成功。在这个框架下可以吗?似乎BeanManager还没有实现所需的方法。
Mar*_*uba 10
首先,我们应该澄清“以编程方式创建 bean”的确切含义。
但首先,我们应该定义“bean”的含义。在 CDI 中,我们谈论 Bean 有两种含义:
javax.enterprise.inject.spi.Bean元数据通常源自应用程序类。此类元数据“由类支持”。我所说的“由类支持”是指规范中描述的所有类型。即类 bean、生产者方法和生产者字段。
现在,如果您想以编程方式获取组件实例(选项 2),您可以:
javax.enterprise.inject.Instance;例如,请参阅焊接文档CDI.current().select(Foo.class).get()Arc.container().instance(Foo.class).get()但是,如果您想要添加/注册不受类支持的组件元数据(选项 2),则需要添加一个使用 quarkus 特定 SPI 的扩展,例如BeanRegistrar。
| 归档时间: |
|
| 查看次数: |
13760 次 |
| 最近记录: |