java - 在运行时清除缓存 - Eclipse e4

标签 java eclipse-rcp e4

我想在运行时清除 Eclipse e4 缓存(.metadata 目录)。

有很多通过在运行配置中设置复选框来清除缓存的帖子,但我在代码中找不到任何有关清除缓存的内容。

与编写自己的方法相比,我更愿意使用已经编写的方法(如果有的话)。

如果我自己执行此操作,那么我将在生命周期管理器中的 @PostContextCreate 期间执行此操作。

是否有一种方法可以为我执行此操作,或者我应该删除缓存目录?

更新 这是我正在尝试解决的问题。

https://bugs.eclipse.org/bugs/show_bug.cgi?id=430090#add_comment

最佳答案

为了在运行时清除缓存,我重写了 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();  

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

关于java - 在运行时清除缓存 - Eclipse e4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56790086/

相关文章:

java - 如何以更具体的方式处理 NumberFormatException?

java - 在 osgi 中使用 jersey-client 时出错 - 未提供生成器

java - 在继承层次结构中使用不同的泛型类型两次实现泛型接口(interface)

java - 如果行数超过 64k,如何使用 apache-poi 拆分 Excel 文件?

java - E4 获取 Activity 透视 ID 或标签

java - Eclipse RCP 如何重新初始化 View 。 (需要这样做作为解决表错误的方法)

java - java 计算 vector 出现次数

java - Eclipse RCP : How to Edit or Delete the "Editor Area" view in helloworld app

eclipse e4(朱诺): Not able to hide view Part minimize/maximize buttons

java - Eclipse 4.x (Mars) 多页表单