1.可读信息
- Bundle-Name : bundle的一个缩写名
- Bundle-Description : 用于更详细的描述bundle的功能
- Bundle-DocURL : 可以提供更多有关bundle的文档的URL
- Bundle-Category : 一组用逗号分隔的分类名,OSGI并没有指定,你可以自由指定
- Bundle-Vendor : Bundle-ContactAddress : Bundle-Copyright : 提供了有关bundle提供商的信息
2.bundle标识
- Bundle-SymbolicName : 标识bundle ,相当于ID
- Bundle-Version : 标识当前bundle的版本, 与Bundle-SymbolicName一同标识bundle
- OSGI版本号格式 : 0.0.0 < 0.0.0.alpha < 0.0.0.beta
- Bundle-ManifestVersion : 2 R4后都使用这个值来一同标识bundle
3.导出包时更好的方式
- 通过使用属性把版本号与包关联起来
- Export-Package : com.amgji.shape; com.amgji.test; version=”2.0.0”
- Export-Package : com.amgji.shape; version=”2.0.0”
- Export-Package : com.amgji.shape, com.amgji.test
- vendor 任意属性
- Export-Package : com.amgji.shape; vendor=”随便写,用于import匹配”
4.引入包更好的方式
- 通过使用属性更好的匹配导出包
- Import-Package : com.amgji.haha; version=”[1.0.0,2.0.0)”
- 如果你想指定一个精确的版本范围 必须 : “[1.0.0,1.0.0]”
- Import-Package : com.amgji.haha; version=”[1.0.0,2.0.0)”
5.Bundle类路径
- Bundle-ClassPath : . (默认)
- 只有类路径是点号的bundle可以作为标准的JAR文件使用
6.清单文件中的指令
- uses指令 : 导出包中附带的指令,其值是一组用逗号分隔的由相应导出包公开的包
- Export-Package : org.osgi.service.http;
uses :=”javax.servlet”;version=”1.0.0”
Import-Package : javax.servlet; version=”1.0.0”
- Export-Package : org.osgi.service.http;