栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

blog220122.Eclipse bundle之MANIFEST headers

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

blog220122.Eclipse bundle之MANIFEST headers

blog220122.Eclipse bundle之MANIFEST headers

Manifest-Version: 1.0Bundle-ManifestVersion: 2Bundle-Name: FirewallBundle-SymbolicName: org.eclipse.ui.examples.contributions; singleton:=trueBundle-Version: 3.5.0.qualifierBundle-Activator: com.example.ActivatorRequire-Bundle: org.eclipse.ui;bundle-version="[3.3.0,4.0.0)", org.eclipse.core.runtimeimport-Package: org.osgi.util.tracker,org.osgi.service.log;version=1.4 Export-Package: org.osgi.util.tracker;version=1.3

Require-Capability: osgi.ee; filter:="(&(osgi.ee=AcmeMin)(version=1.1))"Provide-Capability: com.acme.dict; from=nl; to=de; version:Version=1.2Bundle-Localization: pluginBundle-RequiredExecutionEnvironment: JavaSE-11Bundle-ActivationPolicy: lazyAutomatic-Module-Name: com.examples.helloBundle-Category: osgi, test, nurseryBundle-ClassPath: /jar/http.jar,.Fragment-Host: org.eclipse.swt; bundle-version="[3.0.0,4.0.0)"Bundle-UpdateLocation: http://www.acme.com/Firewall/bundle.jar一组描述性headers

本文以eclipse 4.20为参考.

MANIFEST.MF中常用到的headers,

Manifest-Version: 1.0

无关osgi.

Bundle-ManifestVersion: 2

2对应的是osgi spec relase 4及之后.

Bundle-Name: Firewall

描述性.

Bundle-SymbolicName: org.eclipse.ui.examples.contributions; singleton:=true

bundle的符号名字, 配合版本号可以唯一标识一个bundle. 是manifest.mf的必设项.
singleton默认是false.

Bundle-Version: 3.5.0.qualifier

bundle的版本号. 最多是4段, major.minor.micro.qualifier. 而qualifer允许alphNum, '_‘和’-'字符.
默认值是0.0.0

Bundle-Activator: com.example.Activator

指定activator.

Require-Bundle: org.eclipse.ui;bundle-version="[3.3.0,4.0.0)", org.eclipse.core.runtime

bundle依赖的bundles.

import-Package: org.osgi.util.tracker,org.osgi.service.log;version=1.4

bundle依赖的pakcage.

Export-Package: org.osgi.util.tracker;version=1.3

bundle输出的packages. 逗号间隔.

Require-Capability: osgi.ee; filter:="(&(osgi.ee=AcmeMin)(version=1.1))"

bundle依赖的能力集

Provide-Capability: com.acme.dict; from=nl; to=de; version:Version=1.2

bundle提供的能力集.

Bundle-Localization: plugin

指定bundle使用的localization file. 允许plugin.xml和manifest.mf中使用%XXX引用相应字串.
eclipse中通常指定plugin, 会使用./plugin.properties, plugin_de.properties等
默认指定是 Bundle-Localization: OSGI-INF/l10n/bundle, 即使用./OSGI-INF/l10n/bundle[_local].properties

Bundle-RequiredExecutionEnvironment: JavaSE-11

逗号间隔. bundle的运行环境要求.

Bundle-ActivationPolicy: lazy

lazy指明bundle启动后停留在starting状态, 仅在收到第一次请求后方才进入activated状态. 若不指定Bundle-ActivationPolicy, 则直接进入activated状态, 称作eager activation.

Automatic-Module-Name: com.examples.hello

无关osgi, 这是一个关于java 9开始的modular的header, 用于兼容没有modular descriptor(module-info.java)的传统代码.

Bundle-Category: osgi, test, nursery

指定一组category的名字

Bundle-ClassPath: /jar/http.jar,.

指定jar或bundle内的路径做为class path. ‘.‘是bundle根路径.
默认路径既是’.’

Fragment-Host: org.eclipse.swt; bundle-version="[3.0.0,4.0.0)"

指定该fragment的host bundle.

Bundle-UpdateLocation: http://www.acme.com/Firewall/bundle.jar 一组描述性headers

Bundle-Vendor: OSGi AllianceBundle-Copyright: OSGi © 2002Bundle-Description: Network FirewallBundle-ContactAddress: 2400 Oswego Road, Austin, TX 74563Bundle-Developers: pkriens; email=pkriens@osgi.org; name=“Peter Kriens”; organization=“OSGi Alliance”Bundle-DocURL: http://www.example.com/Firewall/docBundle-License: Apache-2.0; link=“http://opensource.org/licenses/apache2.0.php”

驽马一架 一花一世界 2022/1/22

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/712499.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号