【问题标题】:What is strict class loading?什么是严格的类加载?
【发布时间】:2012-06-29 16:56:19
【问题描述】:

我正在学习 osgi 框架。它说 osgi 在严格的类加载环境中工作。我无法得到什么是严格的类加载。请帮助我无法理解这个概念

谢谢

【问题讨论】:

  • 这没有任何意义。说这话的人需要解释他们的意思。如果您发布引用的链接,那么它可能会得到澄清。

标签: osgi classloader


【解决方案1】:

严格的类加载意味着模块(包)必须明确指定它需要什么。在 OSGi 中,这是使用 Manifest 标头完成的。 Import-Package 列出捆绑包所需的包及其版本范围,Export-Package 列出捆绑包提供的包及其版本。在 OSGi 运行时中,每个包都有一个类加载器,它根据导出和导入连接包。

您不应该手动定义这些标题。有一个名为 bnd 的好工具,或者在 maven 中来自 felix 的 maven bundle 插件,它可以为您完成大部分工作。在本教程中,您将了解这在实践中是如何工作的: http://www.liquid-reality.de/x/DIBZ

你会看到我实际上并没有在那里手动定义太多。因此,将代码构建到 meta-inf/Manifest 中,看看它做了什么。

【讨论】:

    【解决方案2】:

    严格的类加载环境意味着需要指定适当的类头。例如类路径和导入包

    【讨论】:

    • 对不起.. 但我无法得到类的标题是什么?
    猜你喜欢
    • 1970-01-01
    • 2011-03-09
    • 1970-01-01
    • 2015-05-09
    • 1970-01-01
    • 2018-07-21
    • 2012-12-26
    • 2014-04-07
    相关资源
    最近更新 更多