`

OSGi4.2规范的Bundle Manifest Headers列表

    博客分类:
  • java
阅读更多

OSGi4.2规范的Bundle Manifest Headers列表,红色表示必须要配置的项,其余都为可选项。

1、Bundle-ActivationPolicy: lazy
     设置bundle的加载策略,本参数只有一个值:lazy,设置本参数后就延迟加载;不设置本参数,bundle启动时就激活。
2、Bundle-Activator: com.acme.fw.Activator
     设置启动和停止bundle的类的全额限定名。
3、Bundle-Category: osgi, test, nursery
     设置用逗号分隔的分类名称。
4、Bundle-ClassPath: /jar/http.jar
      设置用逗号分隔的类路径,包含:JAR文件、包含类和资源的目录(bundle内部)。其中点号('.')表示bundle包含的JAR文件的根目录,为默认值。
5、Bundle-ContactAddress: 2400 Oswego Road, Austin, TX 74563
     设置bundle提供者的联系地址。
6、Bundle-Copyright: OSGi (c) 2002
     设置bundle的版权信息。
7、Bundle-Description: Network Firewall
     设置对bundle的简短描述信息。
8、Bundle-DocURL: http:/www.acme.com/Firewall/doc
     设置bundle文档的链接地址。
9、Bundle-Icon: /icons/acme-logo.png;size=64
     设置bundle对应的icon的URL地址,在地址后面使用size参数设置icon大小(如:size=64设置的图片大小为:64*64)。
     URL可以为相对于bundle的地址(即在bundle内部的图片路径),也可以为指定了http等scheme的绝对地址。实现本规范的框架至少需要支持png格式图片。
10、Bundle License: http://www.opensource.org/licenses/jabberpl.php
     设置bundle的许可协议信息,用于在使用bundle之前提示需要接受许可协议。
     许可协议信息可以为一个指定的URL地址,也可以包含如下参数:
name  --  一个全局唯一的许可协议名称。(如果设置为:<<EXTERNAL>>,表示该bundle不包含许可协议,许可协议在其他地方提供。默认值)
description -- 许可协议的描述信息。
link -- 定义或说明许可协议的URL地址。如果不设置link,则使用name参数设置。URL值相对于bundle的根目录,该许可协议在bundle的内部。
11、Bundle-Localization: OSGI-INF/l10n/bundle
     设置bundle的国际化文件地址,默认值为OSGI-INF/l10n/bundle,国际化的文件类似:OSGI-INF/l10n/bundle_de.properties,OSGI-INF/l10n/bundle_nl.properties等。
12、Bundle-ManifestVersion: 2
     设置bundle遵循本规范的规则。默认值为1,表示遵循本规范的第三个版本的bundle;2表示遵循本规范的第四个版本及以后发布的版本。也可以为OSGi新发布的版本定义更高的数字。
13、Bundle-Name: Firewall
     设置bundle的名称,应该为一个简短、可阅读、可包含空格的名称。
14、Bundle-NativeCode: /lib/http.DLL; osname = QNX; osversion = 3.1
     设置bundle的本地代码库规范。包含的属性有:
     osname -- 操作系统名称,如:windows 7等。
     osversion -- 操作系统版本号,如:“3.1”等
     processor -- 处理器架构,如:x86等。
     language -- 遵循ISO编码的语言,如:en,zh等。
     seleciton-filter -- 选择过滤器,该值为一个过滤器表达式,指定被选中或未被选中的本地代码。
例子如下:
Bundle-NativeCode: lib/http.dll ; lib/zlib.dll ;
osname = Windows95 ;
osname = Windows98 ;
osname = WindowsNT ;
processor = x86 ;
selection-filter=
"(com.acme.windowing=win32)";
language = en ;
language = se ,
lib/solaris/libhttp.so ;
osname = Solaris ;
osname = SunOS ;
processor = sparc,
lib/linux/libhttp.so ;
osname = Linux ;
processor = mips;
selection-filter
= "(com.acme.windowing=gtk)"
15、Bundle-RequiredExecutionEnvironment: CDC-1.0/Foundation-1.0
     设置在服务平台上必须的可执行环境,多个可执行环境以“,”分隔。
16、Bundle-SymbolicName: com.acme.daffy (required)
     设置bundle的符号名称,为全局唯一的名称。该名称一般为反向域名,该参数必须要设置。
17、Bundle-UpdateLocation: http://www.acme.com/Firewall/bundle.jar
     设置bundle的更新地址,如果bundle需要更新时,使用该地址进行更新。
18、Bundle-Vendor: OSGi Alliance
     设置bundle的提供者。
19、Bundle-Version: 1.1
     设置bundle的版本号,默认值为:0.0.0
20、DynamicImport-Package: com.acme.plugin.*
     设置动态导入包列表,多个包使用“,”逗号分隔。
21、Export-Package: org.osgi.util.tracker;version=1.3
     设置导出包。
22、Export-Service: org.osgi.service.log.LogService
     Deprecated,不建议使用。
23、Fragment-Host: org.eclipse.swt; bundle-version="[3.0.0,4.0.0)"
     描述本片断中的主bundle。
24、Import-Package: org.osgi.util.tracker,org.osgi.service.io;version=1.4
     设置bundle导入的包。
25、Import-Service: org.osgi.service.log.LogService
     Deprecated,不建议使用。
26、Require-Bundle: com.acme.chess
     设置bundle中需要其他bundle导出的清单。

分享到:
评论
1 楼 lgdlgd 2011-01-01  
Bundle-ActivationPolicy: lazy
去除这个参数后,类还是等到插件被第一次使用才加载

相关推荐

Global site tag (gtag.js) - Google Analytics