gpt4 book ai didi

java - 在 Eclipse 中的特定行号处打开 XML 文件

转载 作者:行者123 更新时间:2023-12-02 11:19:02 24 4
gpt4 key购买 nike

我正在编写一个 Eclipse 插件,我需要在特定行号(错误所在)处打开一个 XML 文件。

我已遵循此 question 上已接受的答案它实际上有效...在我的 FileSystemChangesListener 监听器中生成 resourceChanged() 事件产生了不良副作用。

有没有一种方法可以跳转到特定行而不产生文件更改?这些事件会触发插件中的其他执行。

我尝试将 TRANSIENT 参数添加为 true 但无济于事,如下所示:

HashMap<String, Object> map = new HashMap<String, Object>();
map.put(IMarker.LINE_NUMBER, lineNumber);
map.put(IMarker.TRANSIENT, true); // doesn't make any difference.
marker.setAttributes(map);
IDE.openEditor(page, marker);

仍然生成resourceChanged()事件。

最佳答案

IFile.createMarker调用正在生成资源更改事件,您无法阻止此操作。

但是您可以识别出这是 IResourceData 中的创建标记事件您收到 - getFlags()方法将有 IResourceData.MARKERS标志设置。

请注意,资源增量可以合并,因此可能会设置多个标志 - 例如,如果 IResourceDelta.CONTENT设置后文件的内容也发生了变化。

关于java - 在 Eclipse 中的特定行号处打开 XML 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50066481/

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