java - OSGi 与测试中的依赖注入(inject)

标签 java testing dependency-injection osgi

对于一个新项目,我正在研究 OSGi 在依赖注入(inject)方面必须提供的内容,我有点喜欢 iPOJO(纯基于注释,不支持 xml)。

但是,从测试的角度来看,Blueprint 可能更好,因为对于不同的测试用例(功能测试),重写 blueprint 配置可能就足够了,并且会立即注入(inject)其他服务。

你对这个问题有什么看法? 我能否在不牺牲测试灵 active 的情况下放弃基于 XML 的蓝图(我讨厌 XML)以支持 iPOJO?

最佳答案

是的。你可以。我认为你不会牺牲任何东西。 事实上,iPOJO 比 blueprint 更强大,它支持诸如“字段注入(inject)”、“服务生命周期控制”和“配置管理”之类的东西 - 而 Blueprint 不支持 ( reference )。

但是,蓝图是 OSGi Enterprise Specification 的一部分,如果这很重要的话。

我没有使用过 Blueprint,只是查看了它的规范 - 除非您是 Java Bean 专家,否则我会远离它。此外,与 DS 相比,我更喜欢 iPOJO,因为它在很多情况下似乎更聪明,而且做正确的事。

关于java - OSGi 与测试中的依赖注入(inject),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9418409/

相关文章:

testing - 使用 CMake + make 只运行一个测试

c# - 使用 Unity 注入(inject)构造函数参数

java - 在构建时在项目的所有文件中强制执行编码标准

ruby-on-rails - 如何 stub /模拟 Rails 2.3 中功能测试的辅助方法?

java - MenuButton 在 Javafx 中不显示项目

jakarta-ee - 真实服务的模拟对象

angular - 如何从Angular中的另一个服务调用服务的特定实例?

android - Dagger 2 : Injecting to Activities from multiple subcomponents

java - 通过 Hibernate 从 PostgreSQL 数据库随机选择

java - 不改变 boolean 值