首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >OSGi框架中的可拓束意义

OSGi框架中的可拓束意义
EN

Stack Overflow用户
提问于 2016-10-05 07:59:11
回答 1查看 1.2K关注 0票数 3

我正在开发一个基于OSGi的应用程序。在记录OSGi框架的特性时,我无意中发现了扩展包的概念。引用R4规范(OSGi R4):

扩展包可以交付框架实现的可选部分,或者提供必须驻留在引导类路径上的功能。这些包不能由正常的进出口机制提供。引导类路径扩展是必要的,因为某些包实现假定它们位于引导类路径上,或者需要对所有客户端可用。引导类路径扩展的一个例子是java.sql的实现,例如JSR 169。

可能只是我太蠢了,但我很难理解这个概念。我有几个问题:

  1. 据我所知,扩展包似乎正在执行org.osgi.framework.system.packages.extraorg.osgi.framework.bootdelegation(即com.sun.*sun.*)的相同的工作。我说的对吗?如果没有,他们之间有什么区别?
  2. 您能给我展示一个扩展包的真实用例场景吗?有句话说:“除非你使用扩展包,否则你是做不到的!”这里已经有人试图为扩展包提供一个例子,但是(至少对我来说)似乎可以通过调整org.osgi.framework.system.packages.extraorg.osgi.framework.bootdelegation来达到同样的效果;

我知道已经有这就是答案了,但对我来说,它并没有完全达到目的。

谢谢您的回复!

EN

Stack Overflow用户

回答已采纳

发布于 2016-10-05 08:03:47

扩展包可以用来覆盖任何类,甚至是java.lang类。

例如,您可能希望在调用System.gc()时进行跟踪(例如,将堆栈跟踪写入日志文件)

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39868428

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档