java - Tool/Bundle-Name/Export-Package 等在 jar list 中意味着什么

标签 java jar osgi manifest

我正在查看一些 apache 库的 manifest.mf。虽然我可以猜出 Export-Package 的含义,但我找不到这些属性的任何文档?谁能指出我正确的方向。 这是一个例子:

Manifest-Version: 1.0
Created-By: 1.6.0_07 (Sun Microsystems Inc.)
Built-By: pemben
Implementation-Title: Commons BeanUtils
Implementation-Vendor: The Apache Software Foundation
Implementation-Vendor-Id: org.apache
Implementation-Version: 1.8.2
Specification-Title: Commons BeanUtils
Specification-Vendor: The Apache Software Foundation
Specification-Version: 1.8.2
Export-Package: org.apache.commons.beanutils.locale.converters;
Private-Package: org.apache.commons.collections;version="1.8.2"
Ignore-Package: org.apache.commons.collections
Tool: Bnd-0.0.238
Bundle-Name: Commons BeanUtils
Bundle-Vendor: The Apache Software Foundation
Bundle-Version: 1.8.2
Bnd-LastModified: 1257775355133
Bundle-ManifestVersion: 2
Bundle-License: http://www.apache.org/licenses/LICENSE-2.0.txt
Bundle-Description: BeanUtils provides an easy-to-use but flexible wra
 pper around reflection and introspection.
Import-Package: org.apache.commons.beanutils;version="1.8.2"
Bundle-SymbolicName: org.apache.commons.beanutils
Bundle-DocURL: http://commons.apache.org/beanutils/

最佳答案

Bundle 属性定义信息 wrt。 OSGi bundle 。 OSGi 包只是一个 .jar 文件,它还定义(通过属性)它导出的内容以及它的依赖项(包括版本)。请注意,.jar 文件可用作标准 .jar 文件 - bundle 信息仅在 OSGi 容器中使用。

This JavaWorld article是一个很好的介绍。

关于java - Tool/Bundle-Name/Export-Package 等在 jar list 中意味着什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1816606/

相关文章:

java - 错误 : Duplicate zip entry [43. jar :org/apache/http/annotation/NotThreadSafe. 类]

java - 使用最少 "XOR"操作重新创建二进制矩阵

Java:如何指定一个目录,这样我就不需要指定它来引用它的 .jar 文件

java - 是否可以查看 Eclipse 正在执行的 shell 命令?

java - 在 Felix 框架中存储对象

java - OSGi:无法直接从存储库安装超过 1 个资源?

desktop - 什么时候应该使用像 OSGI 这样的平台,什么时候必须避免?

java - JCombobox1与json数据转换静态变量

java - 在 Junit 测试中打印出方法的输出

java - 无法集成 BouncyCaSTLe Jar