OSGi是一个用于Java的动态模块化系统。好的,但基线主题是什么,OSGi为什么开发?使用OSGi有什么好处?开发OSGi的主要故事是什么?它为什么存在?OSGi中的基础主题是什么?
回答
OSGi是
的Java模块系统:它提供了导出和导入Java包和执行模块的边界,包括明确的依赖和版本信息的一种方式。
为Java系统的广义容器:束可以被动态地加载和卸载,而不停止该系统,其中“束”基本上是JAR文件。
面向服务的编程系统:除了通过包模块化系统外,OSGi还支持面向服务的模块化,包括诸如whiteboard pattern(PDF)之类的东西。
OSGi的最初开发是为了支持高端嵌入式系统,例如机顶盒,这激发了明确的依赖关系和版本,以及作为一个较新的,企业端使用时使其相当轻量级容器。
在OSGi联盟重新命名之前,OSGi代表“开放服务网关倡议”。主要目标是嵌入式家庭网关和路由器。 – akr 2009-12-08 01:11:16
如果你仔细看,类路径中的Java概念真的很烂。
您将类分布在JAR文件中,但在运行时,Java将(几乎)将所有JAR文件中的所有类盲目地扔到一个大包中,其中同名的类彼此遮蔽,然后以意想不到的方式进行交互。
的OSGi带来了正确的运行时模块到Java平台和一个功能强大的服务模型之上,有时也被称为“SOA在JVM内部”。
我会强烈建议阅读OSGi的一些介绍文章,将给予的这一切意味着一个更具体的想法。一个很好的出发点可能是Alex Blewitt的一系列的关于Java模块化InfoQ上的文章:
我想这个问题可以降低到“什么是Modularisation'的价值。有关Kirk Knoernschild关于此主题的优秀系列文章,请参见http://techdistrict.kirkk.com/。我相信一本书也在作品中。
如果您在学术上倾斜 - 模块化和动力系统总成的动力深受最近出版的新书探讨 - “多样性和复杂性”(http://press.princeton.edu/titles/9208.html)。尽管不是以软件为中心的,本书解释了为什么下一代自适应/强大的软件系统必须是模块化的。
请注意,除了成为Java模块化的行业标准(因此启用上述所有功能); OSGi还为桌面带来了强大的“SOA-内部JVM”服务架构。
最后,一个温柔以及制作介绍到OSGi的发展 - 尝试尼尔·巴特利特的书“OSGi的实践” http://njbartlett.name/osgibook.html
问候
理查德
任何好处的OSGi提供,他们黯然失色由于缺乏灵活性,对构建环境的修改以及大量其他变化,这主要是由(经验丰富的)开发人员无能所致。
这些障碍会降低开发人员的生产力,从而降低对源代码进行所有改进的速度(不仅仅是模块化改进)。
我不同意,Bundles上的工具非常好,所以它本身可以做很多事情(Bnd和Felix注释,你涵盖了很多)。许多开源库已经有OSGi清单条目(正因为它很容易添加)。 – eckes 2014-04-16 02:58:28
示例:由Felix拒绝生成配置文件的Maven bundle插件由于格式不正确(并且必须手动修复它们),“应用到classpath”会中断maven项目,当某些操作失败时没有错误或警告,样板文件iPOJO默默无法完成工作,消息中的拼写错误,需要黑客(pax url)在IDE和部署的JAR之间进行相同的工作,因为它们对它进行了过度设计,并假定每台机器都将有一个管理员来控制OSGi容器,部署可插拔游戏,图形,音频软件给普通用户不合理。 – user515655 2015-11-03 17:20:20
- 1. 什么是基础*(*)()
- 2. 基础JavaScript的WordPress主题
- 3. 基础知识中的API是什么?
- 4. 分布式基础架构中的OSGi
- 5. 基础黑暗主题
- 6. 是什么OSGi的
- 7. 什么是CSS的基础64字体
- 8. 可编辑的gridview - 什么是基础?
- 9. 什么是生动的知识基础
- 10. OSGi列表,这些标题是什么?
- 11. 什么是弹性基础属性集?
- 12. 什么是CloudFoundry基础架构?
- 13. 什么是MFC(微软基础类库)?
- 14. 什么是maven基础目录?
- 15. 主题是什么
- 16. node.js中setInterval的基础是什么? (窗口的等效)
- 17. 什么是Glassfish“osgi-cache”?
- 18. 什么是android中的AppCompat主题?
- 19. HTML中的主题是什么?
- 20. 是什么在主题
- 21. TextMate主题是什么?
- 22. 这是什么WordPress主题?
- 23. 工作流基础中try-finally块的等效项是什么?
- 24. 什么是C++中的基础初始值设定项?
- 25. IPhone的网站主题 - 什么是基本成分?
- 26. 这里的while循环有什么问题? C基础知识
- 27. 在Mac/iOS编程中,什么是“基础对象”?
- 28. theme-settings.php不包含在基础子主题的STARTER中
- 29. 什么版本的CE是Window Mobile 6.5的基础?
- 30. 什么的“XSD的含义是:???扩展基础= ....
osgi是一种说法,“嘿,我们知道你们所有的程序员都有坏习惯,但这是一种让你更容易练习坏习惯的方法。” – 2016-06-15 16:43:44