Why does plugin validation complain about missing constraint that isn't missing? [message #519202] |
Sun, 07 March 2010 19:38  |
Eclipse User |
|
|
|
I'm stepping through the exercises in "Creating Eclipse Plugins". My unit tests are working fine (even in debug mode), but I'm having trouble with the regular run configuration. When I run it, the test instance comes up, but the plugin I've written doesn't appear to be available. There's nothing in the error log or problems view. In the "Plug-Ins" tab of the run configuration, I have both the main plugin and the test plugin enabled in the "Workspace" section. They're not enabled in the "Target Platform" section, and the only plugins enabled in "Target Platform" are the ones that I got from "Add Required Plug-Ins".
Then I noticed the "Validate Plug-Ins" button in the "Plug-Ins" tab of the run configuration. When I clicked that, it gave me the following complaint:
org.qualityeclipse.favorites:
Missing Constraint: Require-Bundle: org.eclipse.jdt.core; bundle-version="3.5.2"
org.qualityeclipse.favorites.test:
Missing Constraint: Require-Bundle: org.junit4; bundle-version="4.5.0"
Here's the MANIFEST.MF files:
-------org.qualityeclipse.favorites-------
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Favorites Plug-In
Bundle-SymbolicName: com.qualityeclipse.favorites; singleton:=true
Bundle-Version: 1.0.0
Bundle-Activator: com.qualityeclipse.favorites.FavoritesActivator
Bundle-Vendor: QUALITYECLIPSE
Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
org.eclipse.jdt.core;bundle-version="3.5.2",
org.eclipse.core.resources;bundle-version="3.5.2",
org.eclipse.core.expressions
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-ActivationPolicy: lazy
Export-Package: com.qualityeclipse.favorites.actions,
com.qualityeclipse.favorites.views
----------------
------org.qualityeclipse.favorites.test------
Manifest-Version: 1.0
Bundle-ManifestVersion: 2
Bundle-Name: Test
Bundle-SymbolicName: com.qualityeclipse.favorites.test
Bundle-Version: 1.0.0.qualifier
Bundle-Activator: com.qualityeclipse.favorites.test.Activator
Bundle-Vendor: QUALITYECLIPSE
Require-Bundle: org.eclipse.ui,
org.eclipse.core.runtime,
com.qualityeclipse.favorites;bundle-version="1.0.0",
org.junit4;bundle-version="4.5.0"
Bundle-RequiredExecutionEnvironment: JavaSE-1.6
Bundle-ActivationPolicy: lazy
--------------
As you can see, both of them have a "Require-Bundle" property which includes the value that it says is missing.
This could just be a red herring, but I can't find anything else wrong that might cause the run configuration to not run the plugin.
|
|
|
|
|
|
Re: Why does plugin validation complain about missing constraint that isn't missing? [message #520022 is a reply to message #519692] |
Wed, 10 March 2010 15:57  |
Eclipse User |
|
|
|
Originally posted by: richkulp.us.NO_SPAM.ibm.com
Hi,
It only does a one-level search. In other words if you "require" a
plugin, and that plugin requires another plugin, that other plugin won't
be pulled in. I think it works better with required features instead of
plugins.
The new p2 format will actually pull in all of the requirements.
David M. Karr wrote:
> I figured this out.
>
> What I realized is that I really did think that the "Add Required
> Plug-Ins" button on the "Plug-Ins" tab of the run configuration would
> ACTUALLY add all the required plug-ins. When I finally thought to look
> at the list in the "Target Platform" section that weren't checked, I
> found that these weren't checked. I also found that there were other
> implicit dependencies that were hit once I checked the "first level".
> I'm not sure anymore what that button refers to as "required" plug-ins.
--
Thanks,
Rich Kulp
|
|
|
Powered by
FUDForum. Page generated in 0.04547 seconds