将JAR文件转换为OSGi捆绑包

要将Java存档(JAR)文件转换为OSGi捆绑包,请按照以下步骤从附加的junit-4.4.jar创建OSGi捆绑包,如下文中所述。

描述 description

环境

Experience Manager

问题/症状

如何将现有Java存档(JAR)文件转换为Open Service Gateway Initiative (OSGi)捆绑包?

解决方法 resolution

  1. 首先创建JAR清单文件:

    code language-none
    Manifest-Version: 1.0
    Created-By: myself
    Bundle-ManifestVersion: 2
    Bundle-Name: JUnit 4.4 bundle
    Bundle-Description: Package junit 4.4 in an OSGi bundle
    Bundle-Version: 4.4.0
    Bundle-ClassPath: .,junit-4.4.jar
    Bundle-SymbolicName: org.junit.framework
    Export-Package: junit.framework,junit.extensions,org.junit.runner,org.junit,junit.textui
    
    • Bundle-ClassPath标题设置为允许按原样嵌入原始jar。 确保其值与要嵌入包中的jar的文件名匹配。
    • Export-Package是jar中包含的包的列表,您希望使其对OSGi容器中运行的其他包可用。
  2. JAR文件

    获取jar文件。

  3. 通过运行以下命令创建捆绑jar文件:

    code language-none
    jar cvfm junit-4.4-bundle.jar manifest.txt junit-4.4.jar
    

    其中manifest.txt是上面创建的清单文件的名称。

也就是说,生成的jar文件是一个OSGi捆绑包,它使用嵌入的junit-4.4.jar.的类导出上面Export-Package中列出的包

recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f