一旦在 eclipse RCP 中安装了新的 plugin/features,是否有任何方法可以自动从磁盘中清除旧的 plugins/features?

Is there any method to clean old plugins/features from disk automatically once new plugin/features are installed in eclipse RCP?

我正在构建一个 RCP 应用程序,其中 features/plugins 每个季度都会有更新。因此,如果用户选择自动更新 feature/plugin,则会下载更新插件的新 jar,但旧插件仍在使用我的磁盘 space,不再使用。

我已经厌倦了删除包含旧 jar 信息的安装历史记录。当我尝试删除它时,它显示了下面给定的消息

但这并没有删除 .jar,我仍然可以在我的 feature/plugin 文件夹中找到它。

此外,这是一个手动过程。那么,有什么方法可以在有更新版本的新 jar 时自动删除旧插件。

在您的 plugin_customization.ini 文件中启用 p2 垃圾收集器,如下所示:

# after upgrading delete the plug-ins that are no longer needed
org.eclipse.equinox.p2.ui.sdk.scheduler/gcOnStartup=true

有关详细信息,请参阅 Eclipse wiki:Equinox p2 FAQ - Why aren't bundles being removed when their associated feature has been removed?