gpt4 book ai didi

java - 从我的插件中清除 Eclipse 错误日志 View

转载 作者:行者123 更新时间:2023-12-01 15:47:33 26 4
gpt4 key购买 nike

我正在开发一个 Eclipse RCP 插件。插件中的命令之一执行一些数据验证,并将消息记录到 Eclipse 错误日志 View 。

我希望该命令在开始工作之前清除错误日志,以便当该命令完成时,错误日志仅包含与该命令最近调用相关的错误。

我发现我可以通过这样做来删除日志文件本身:

Platform.getLogFileLocation().toFile().delete();

但是,正如您所料,错误日志不会刷新其内容,只是因为我偷偷地删除了该文件。

我在 org.eclipse.ui.internal.views.log.LogView 中进行了探索,虽然我确实看到了 View 自行更新的地方,但我没有看到一种简单的触发方法“清除并刷新。”

有没有办法让错误日志仔细检查其备份文件并自行刷新?或者,有没有更“合理”的方式来清除 View ?

更新:让日志自行更新的一种稍微笨拙的方法是记录其他内容

我目前正在删除旧日志文件后立即记录一条“信息”消息,这并不理想,但目前它已经让我足够接近我想要的位置了:

Platform.getLogFileLocation().toFile().delete();
Plugin plugin = Plugin.getPlugin();
ILog log = plugin.getLog();
log.log(new Status(IStatus.INFO, Plugin.PLUGIN_ID, "Starting utility validation pass..."));

最佳答案

首先,您说您正在创建 RCP 产品。日志 View 来自 PDE 插件,因此除非您有意在 RCP 中指定它,否则您的用户永远无法使用它。请注意,您的开发启动配置可能会将其作为启动的一部分包含在内,但它可能不在您的实际 RCP 中。

对于你的问题 - 如果不对 LovView 类的私有(private)/ protected 成员进行严重攻击,我看不到任何简单的方法。如果您打算在 RCP 中包含 LogView,则可以考虑扩展 LogView,并公开删除日志的方法(或在删除日志文件后立即调用“ protected ”reloadLog())。

希望有帮助

关于java - 从我的插件中清除 Eclipse 错误日志 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6848164/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com