1
4
在与OSGi f/w一起工作了近一年之后,我对OSGi所提供的功能印象深刻:强大且强制的模块化、零停机时间、模块的可靠可插性和性能。
尽管如此,让我向你保证,所有的善行并不是一目了然的。一定要弄到一些好的技术文件
in-action
这本书是一本好书,那本书也是
r4 specification
]. 缺乏了解会让你
除了理解f/w之外,您还应该强调与内聚和松耦合、针对接口编程相关的“良好实践”。你也应该调查一下 BND tool 这是打包OSGi包的一个很好的方法。 你可能经常会遇到这样的争论:OSGi是一个相当“过分的杀伤力”,我不会断然否认这一点。然而,如果您真的希望通过OSGi获得独特的功能,那么用这个f/w来解决问题比从头开始实现复杂的工作要简单得多。 最后一件事-在使用w/OSGi工作时,您可能会一次又一次地遇到Spring,但这确实不是必需的,除非您熟悉w/Spring,否则可能也不值得深入了解。 |
2
2
我们正在使用osgi和Apache Felix开发一个大项目。 另一方面:由于Osgi本身的原因,我们很少遇到问题,去年也没有人遇到。Osgi确实按照承诺工作。 另一方面,许多公共库和框架的行为不正常(比如Hibernate在类加载器链上没有正确返回)。尝试与除Jetty之外的db和web容器集成可能会有问题。 在我看来,最大的问题是像Osgi这样的东西应该是Java标准Api的一部分,并且应该得到整个工具链的支持。 显然,甲骨文希望在未来继续使用Java Jigsaw项目,这是一个远没有雄心勃勃的模块化标准。 不管怎样,如果你需要动态插件,我认为没有什么比Osgi更好的了,但是要准备写很多代码来支持它。 |
3
1
OSGi确实提供了可插入性,而且已经相当成熟。创建自己的等效框架需要做很多工作。 |
Martin · 如何在上下文中动态添加/删除servlet? 7 年前 |
mike · 在OSGi参考注释中动态设置目标属性 7 年前 |
Sandy · 驼峰REST DSL-地址已在使用:绑定异常 7 年前 |