English 中文(简体)
Extend ExportWizard defined in Plugin A in a depending Plugin
原标题:

I m having Plugin A which extends the Export Wizard via the org.eclipse.ui.exportWizard ExtensionPoint. Plugin B depends on Plugin A, is it possible to add WizardPages defined in Plugin B to Plugin A? I know adding Pages dynamicly is possible withhin the same Plugin with the DynamicWizard and function getNextPage.

最佳回答

One way would be to define an extension point "plugin_a_wizard_page" in Plugin A, with Plugin B extending it. That way, Plugin A can scan for plugins extending the extension point and add all these to the wizard.

You than have to take a look at Buddy-Class-Loading. In short: PluginA has to define a policy of Eclipse-BuddyPolicy: registered and PluginB has to register itself as a buddy to PluginA.

See: Eclipse RCP: ClassNotFoundException or How to make other bundle load my class

Then PluginA can do the following loop:

IExtensionRegistry registry = Platform.getExtensionRegistry();
IConfigurationElement[] wizardContributions = extensionRegistry
            .getConfigurationElementsFor(
                    "my.plugin",
                    "myExtensionPoint");

for (IConfigurationElement wizardContribution  : wizardContributions ) {
    try {
        IMyWizardContributionInterface listenerClass = (IContactsListener) wizardContribution.createExecutableExtension("class");
        // User your class and add it to the wizard
    } catch (final Exception e) {
         e.printStackTrace();
    }
}
问题回答

Yes, as long as Plugin B is in the required plugins list for Plugin A (in Plugin A s manifest) then you can access classes from it in any extension point you define in Plugin A. The plugin editor will help you with this, as it will give you a warning if you are referring to a class that it can t access in your wizard extension point.





相关问题
In Eclipse, why doesn t "Show In" appear for non-Java files?

If I have a *java file open, I can right click on the source, scroll down to "Show In (Alt-Shift-W)", and select Navigator. If I have an *xml, *jsp, or pretty much anything besides a Java source ...

Eclipse: Hover broken in debug perspective

Since upgrading Eclipse (Galileo build 20090920-1017), hover in debug no longer displays a variable s value. Instead, hover behaves as if I were in normal Java perspective: alt text http://...

Eclipse smart quotes - like in Textmate

Happy Friday — Does anyone know if eclipse has the notion of smart quotes like Textmate. The way it works is to select some words and quote them by simply hitting the " key? I m a newbie here so be ...

Indentation guide for the eclipse editor

Is there a setting or plugin for eclipse that can show indentation guides in the editor? Something like the Codekana plugin for visual studio (not so fancy is also OK). Important that it works with ...

Adding jar from Eclipse plugin runtime tab

I want to add .jar files for plugin from the Runtime tab of manifest file. When I use the Add... button, I can see only sub-directories of the plugin project. So if I want to add same .jar file to ...

How to copy multiple projects into single folder in eclipse

I have two projects, Project1 and Project2. Now i want to copy this projects into eclipse workspace but i want these projects to be in a single folder like below. Eclipse Workspace -> Project -> ...

Java: Finding out what is using all the memory

I have a java application that runs out of memory, but I have no idea which code is allocating the memory. Is there an application with which I can check this? I use Eclipse.

热门标签