Search code examples
configurationeclipse-plugin

Plugin Dependencies: how to uninstall plugin but leave its dependencies installed


My plugin has some dependencies and it automatically install these dependencies (other third party plugins) when I install my plugin. When I uninstall my plugin, its dependencies are uninstalled as well.

As these other plugins may be useful to the user, is there any way to uninstall my plugin but leave these dependencies installed?

As far as I could investigate, if I install these other plugins before installing my plugin then they will remain there, but if I install them as dependencies they get ripped off.


Solution

  • If you installed the dependencies explicitly before installing your main plugin, then P2 treats them as installed by the user. In the dependency case, it treats them as installed by the system.

    All plugins, which were installed by the system (not by the user), are automatically removed during an uninstallation, if there are no dependent plugins. At least that is what I remember from an EclipseCon presentation by the P2 guys.

    That said, it is simply not your job to decide for the user. The user installs features. If those features are uninstalled, their plugins are gone. If the user still wants that functionality, he should install the features containing those plugins.