我正在使用Eclipse RCP插件。插件中的一個命令會執行一些數據驗證,並將消息記錄到Eclipse錯誤日誌視圖。從我的插件清除Eclipse錯誤日誌視圖
我希望命令在開始工作前清除錯誤日誌,這樣當命令完成時,錯誤日誌只包含與命令最近一次調用相關的錯誤。
我發現,我可以這樣做刪除日誌文件本身:
Platform.getLogFileLocation().toFile().delete();
然而,正如你所預料的,錯誤日誌不刷新其內容只是因爲我偷偷它的背後並刪除該文件。
我在org.eclipse.ui.internal.views.log.LogView
四處探索,雖然我確實看到視圖自我更新的地方,但我沒有看到直接觸發「清除&刷新」的方法。
有沒有辦法要求錯誤日誌仔細檢查其支持文件並刷新自己?或者,是否有更合理的方式來清除視圖?
更新:一個稍微缺憾的方式獲取該日誌的更新本身是日誌別的。
我目前登錄的「信息」的消息之後我刪除舊的日誌文件,這是不理想,但它讓我足夠近的地方,我想,現在:
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..."));
我們包括PDE的觀點,是的。擴展LogView是一個有趣的概念。首先想到的問題是,Log View顯然不在我正在處理的插件中。我期望的是,我的插件將來可以用於多個基於RCP的項目,全部基於我的團隊使用的通用「目標平臺」。因此,期望其他項目都包含「默認」日誌視圖是合理的。我們必須調整「目標平臺」才能使用「自定義」日誌視圖。絕對的食物爲思想;非常感謝。 – stracka
接受sgibly的答案,因爲我目前的「解決方法」包含兩種不同的「kludge」口味,並且他關於擴展LogView的想法很好。 – stracka