【问题标题】:Why Eclipse JDT does not have a global symbol search为什么 Eclipse JDT 没有全局符号搜索
【发布时间】:2017-10-27 15:04:30
【问题描述】:

在 CDT 中有一个“开放元素”来搜索全局符号,但在 JDT 中没有。
只用“Java搜索”来搜索,显然不是很方便,为什么JDT不提供这样的功能呢?

【问题讨论】:

  • JDT 有各种各样的搜索。你到底想打开什么?
  • 首先,虽然JDT提供了搜索功能,但是你必须选择一个不方便的类型。其次,全局搜索被索引,速度更快。
  • Java 中没有“全局符号”,这就是您必须选择类型的原因。
  • 我说的'全局符号'不是全局范围内的符号,而是所有类及其成员。喜欢 IntelliJ 的想法。

标签: eclipse-jdt


【解决方案1】:

在 Eclipse 中的任何地方,您都可以使用通用的File Search 来搜索单词,而不管它们在文本中的位置。此搜索可以限制为*.java 文件; Whole word 选项也可能与此问题相关。

如果您想要更精确的搜索结果,JDT 提供语言感知搜索,但为了增加精度,您需要指定您感兴趣的符号的种类 (Search For)。如果不指定种类,搜索将与纯文本搜索非常相似。

CDT 和 JDT 都使用索引进行搜索。据说 CDT 索引更快,因为它更完整,而 JDT 搜索需要分两个阶段操作:基于索引的匹配候选加上使用解析的 AST 的精确匹配。事实上,efforts 已经开始将更完整的 CDT 索引的概念移植到 JDT 以提高搜索速度。然而,对于 Oxygen,这项工作尚未完成。

任何看到允许一次搜索不止一种类型的巨大好处的人都被邀请加入Bug 221081

【讨论】:

  • 好吧,希望这一天快点到来。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-10-08
  • 1970-01-01
  • 2013-04-11
  • 1970-01-01
  • 2019-01-10
  • 1970-01-01
相关资源
最近更新 更多