Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
RE: [platform-core-dev] Bundles which do not require org.eclipse.osgi

I had noticed it recently on 3.1, but never cared to figure out what it
meant.
Here is my little 2 cents contribution to the documentation:

When you use the plugin project wizard, the two fields at the bottom
drive what attributes are created:
Dropdown: "What version of Eclipse is this plug-in targeted for?"
21/3.0/3.1
Checkbox: "Create an OSGI bundle"

Selecting 2.1 creates just a plugin.xml regardless of OSGI checkbox
Selecting 3.0 or 3.1 with no OSGI creates a plugin.xml with the PI
<?eclipse version="3.0"?>

Selecting 3.0 with OSGI creates a plugin.xml with the PI <?eclipse
version="3.0"?> and a MANIFEST.MF with Manifest-Version: 1.0
Selecting 3.1 with OSGI creates a plugin.xml with the PI <?eclipse
version="3.0"?> and a MANIFEST.MF with Manifest-Version: 1.0 and
Bundle-ManifestVersion: 2

Please note that a bundle manifest is NOT created until you actually
have some extensions to extend...

So that gives the platform a way to distinguish 2.1/3.0/3.1 manifests. 

Here what the Javadoc of
/org.eclipse.osgi/org/osgi/framework/Constants.java gives
"Manifest header (named "Bundle-ManifestVersion") identifying the bundle
manifest version. A bundle manifest may express the version of the
syntax in which it is written by specifying a bundle manifest version.
Bundles exploiting OSGI R4, or later, syntax must specify a bundle
manifest version. 
The bundle manifest version defined by OSGi R4 or, more specifically, by
V1.3 of the OSGi Framework Specification is "2". 
The attribute value may be retrieved from the Dictionary object returned
by the Bundle.getHeaders method. "

So it means that 3.1 is implementing part of OSGI R4, and that is the
way to tag a bundle manifest as OSGI R4.
And that this is a mandatory attribute when you are using R4.

> Google found a couple references here:
> http://oscar.objectweb.org/oscar-alpha.html
I guess that OSCAR is also implementing OSGI R4, but the spec is not
public ...and they have no Javadoc in their code for
Bundle-ManifestVersion.

Note also that Bundle-ManifestVersion is nowhere available in the public
OSGI specs R2 and R3, but is mentioned when searching OSGI.org.
However those are "members only" documents which require a password.
 http://www.osgi.org

-- 
Cheers
Philippe

philippe ombredanne | nexB - Open by Design (tm)
1 650 799 0949 | pombredanne at nexb.com 
http://www.nexb.com

> -----Original Message-----
> From: platform-core-dev-bounces@xxxxxxxxxxx 
> [mailto:platform-core-dev-bounces@xxxxxxxxxxx] On Behalf Of 
> Ed Burnette
> Sent: Thursday, May 05, 2005 7:37 AM
> To: Eclipse Platform Core component developers list.
> Subject: RE: [platform-core-dev] Bundles which do not require 
> org.eclipse.osgi
> 
> 
> Hmmm. I read many -dev lists and I'm cc'd on hundreds of 
> bugzilla entries yet this is the first time I've heard of 
> "Bundle-ManifestVersion: 2". Can I put another plug in here 
> for documenting the manifest.mf file? :)
> 
> https://bugs.eclipse.org/bugs/show_bug.cgi?id=90358
> 
> Google found a couple references here:
> 
> http://dev.eclipse.org/viewcvs/indextech.cgi/*checkout*/equino
> x-home/layering/standalone.html
> http://oscar.objectweb.org/oscar-alpha.html
> 
> and it also found a couple source files in external projects 
> that use it already:
> 
> http://opensource.atlassian.com/projects/hibernate/secure/atta
chment/11194/org.hibernate.eclipse.console.patch.txt
http://lists.ibiblio.org/pipermail/notify-dpml/2005-February/000790.html


> -----Original Message-----
> From: Jeff McAffer
> Sent: Wednesday, May 04, 2005 4:42 PM
> To: Eclipse Platform Core component developers list.
> Subject: Re: [platform-core-dev] Bundles which do not require
org.eclipse.osgi
> 
> 
> Some clarification... 
> 
> This is absolutely NOT a backward compatibility issue.  ALL 
> "old" plugins continue to run fine and are NOT affected by 
> this change.  An "old" plugin is one that either does not 
> have a manifest.mf or does not have "Bundle-ManifestVersion: 
> 2" in its manifest. 
_______________________________________________
platform-core-dev mailing list
platform-core-dev@xxxxxxxxxxx
https://dev.eclipse.org/mailman/listinfo/platform-core-dev






Back to the top