为了账号安全,请及时绑定邮箱和手机立即绑定

在运行时清除缓存 - Eclipse e4

在运行时清除缓存 - Eclipse e4

qq_遁去的一_1 2023-02-23 16:57:08
我想.metadata在运行时清除 Eclipse e4 缓存(目录)。有很多帖子通过在运行配置中设置复选框来清除缓存,但我在代码中找不到任何关于清除缓存的内容。与编写自己的方法相比,我更愿意使用已经编写好的方法(如果有的话)。如果我要自己做这件事,那么我会@PostContextCreate在生命周期管理器中做这件事。有没有一种方法可以为我执行此操作,或者我应该只删除缓存目录?更新 这是我要解决的问题。https://bugs.eclipse.org/bugs/show_bug.cgi?id=430090#add_comment
查看完整描述

2 回答

?
哔哔one

TA贡献1854条经验 获得超8个赞

为了在运行时清除缓存,我覆盖了ResourceHandler并将其添加到loadMostRecentModel.


final Method m = getClass().getSuperclass().getDeclaredMethod("getWorkbenchSaveLocation", new Class<?>[] {});

m.setAccessible(true);

final File workbenchSaveLocation = (File) m.invoke(this, (Object[]) null);

workbenchSaveLocation.delete();  

我使用反射,因为父方法是私有的。最好这样做而不是自己编写代码来获取文件,因为它可以确保我始终获得正确的位置。


查看完整回答
反对 回复 2023-02-23
?
白猪掌柜的

TA贡献1893条经验 获得超10个赞

首先,删除.metadata文件夹会损坏用户数据:首选项、启动配置,谁知道还有什么——这取决于特定的插件实现。

此外,您的更新可能包含带有新服务和扩展的新捆绑包和片段。并且用户可以重新排列视图并执行工作台模型坚持的其他事情。

=>

删除工作台模型并不能解决所有问题,请考虑以下事项:


查看完整回答
反对 回复 2023-02-23
  • 2 回答
  • 0 关注
  • 87 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号