MANIFEST.MF : Adding a platform specific required bundle [message #629689] |
Wed, 29 September 2010 09:23 |
Xavier Coulon Messages: 58 Registered: July 2009 |
Member |
|
|
Hello,
I'm working on a plugin that requires the org.eclipse.jdt.launching bundle for some JDT operation.
On a win32 platform, I have the following declaration in my plugin's MANIFEST.MF :
Require-Bundle: org.eclipse.core.runtime;bundle-version="3.6.0";visibility:=reexport,
org.eclipse.core.resources;bundle-version="3.6.0";visibility:=reexport,
org.eclipse.equinox.ds;bundle-version="1.2.1";visibility:=reexport,
org.eclipse.jdt.core;bundle-version="3.6.1";visibility:=reexport,
org.eclipse.equinox.ds;bundle-version="1.2.1";visibility:=reexport,
org.eclipse.jdt.launching;bundle-version="3.5.100"
I can run my JUnit Plugin Testswith the minimal number of activated plugins: in the run configuration, I select "Plugins selected below only" rather than "Workspace plugins", pick my plugins, click on "Add required.." and that's it. I have no other plugin activated, no trouble with background processes started during runtime-workspace launch, etc...
Now, on my MacOSX station, my tests fail because I need to add a dependency on bundle org.eclipse.jdt.launching.macosx.
For now, the only way I found to manage this extra, platform-specific dependency on both platform in a single MANIFEST.MF is the way below (see last line with resolution:=optional):
Require-Bundle: org.eclipse.core.runtime;bundle-version="3.6.0";visibility:=reexport,
org.eclipse.core.resources;bundle-version="3.6.0";visibility:=reexport,
org.eclipse.equinox.ds;bundle-version="1.2.1";visibility:=reexport,
org.eclipse.jdt.core;bundle-version="3.6.1";visibility:=reexport,
org.eclipse.equinox.ds;bundle-version="1.2.1";visibility:=reexport,
org.eclipse.jdt.launching;bundle-version="3.5.100",
org.eclipse.jdt.launching.macosx;bundle-version="3.2.100";resolution:=optional
But PDE warns that the last bundle cannot be resolved on Win32, and I try to avoid as much as possible warnings...
Is there any other (clean) way to manage such platform-specific dependencies ?
I looked in the help ( http://help.eclipse.org/helios/index.jsp?topic=/org.eclipse. platform.doc.isv/reference/misc/bundle_manifest.html) but did not find anything about it.
Since the next step is to use Tycho to automatically build my plugin, I'd like to set the dependencies correctly on both platforms.
Thank you in advance
Regards,
Xavier
|
|
|
Powered by
FUDForum. Page generated in 0.03141 seconds