使用p2卸载功能

时间:2016-06-21 11:31:09

标签: eclipse eclipse-rcp e4 p2

我试图使用p2操作从eclipse中卸载一个功能。

我为实现这一目标所做的是:

OperationFactory of = new OperationFactory();
ProfileChangeOperation operation;
//toInstall = List<IVersionedId> only containing the feature
operation = of.createUninstallOperation(toInstall, repos, monitor);

之后,我正在运行该操作。

该功能将成功卸载,但此功能中的插件将不再依赖其他功能/插件。这是不受欢迎的行为。

我已经尝试添加

org.eclipse.equinox.p2.ui.sdk.scheduler/gcOnStartup=true 

到我的产品属性。<​​/ p>

我也尝试过运行

eclipse.exe -application org.eclipse.equinox.p2.garbagecollector.application -profile DefaultProfile

没效果。

我添加了

-profileProperties org.eclipse.update.install.features=true

到我的程序参数。没效果。

此外,我尝试以编程方式实现GC,这也没有任何效果。

知道怎么解决这个问题吗? P2安装功能,包括所有相关插件。我希望它在卸载操作上的行为相同。

1 个答案:

答案 0 :(得分:1)

只有在使用tycho构建时才会出现问题。我设法通过将org.eclipse.update.configurator添加到启动级别4并将Auto-Start = false添加到我的产品启动级别来解决此问题。

另外,我在项目配置中的属性中添加了值为org.eclipse.update.reconcile的{​​{1}}。

通过使用这种特殊的设置组合,卸载的插件不再显示。