【问题标题】:Automatically find all methods that are used once自动查找所有使用过一次的方法
【发布时间】:2018-02-15 16:28:14
【问题描述】:

对于大型 Java 项目,我想获得在特定范围内(最好在 IntelliJ 内)仅使用一次的所有方法的列表(静态分析)。

我可以轻松获得未使用方法的列表,并且可以手动浏览每个方法并找到用法,但这太乏味了。我在 IntelliJ 2017.3 的可用代码检查中进行了搜索,但找不到合适的检查。

上下文:我寻找最小依赖代码,尤其是仅使用一次的私有函数可能会被内联。

Andrey 的评论之后,我尝试使用结构搜索。

  • 选择菜单Edit/Find/Search Structurally
  • 选择现有模板all methods of the class
  • 选择Edit Variables
  • 对于变量Method,取消选中Unlimited 选项并将Maximum Count 设置为1

虽然这减少了方法的数量,但其中仍有一些方法被多次使用 (Alt+F7)!

【问题讨论】:

  • 您可以尝试使用Structural Search。您可以定义搜索目标的出现范围数。
  • @Andrey。谢谢。但不幸的是,它似乎不起作用。我仍然得到不止一种用法的结果。
  • 创建 IntelliJ 检查是为了发现有问题或可能有问题的事情。只使用一次的方法没有任何问题、不好或错误,因此没有检查来检测这种方法。如果需要,您可以编写一个插件来查找此类方法。
  • @yole 这听起来有点奇怪。当然,IntelliJ 不可能无所不知,无法真正区分可能有问题的事情和绝对没有问题的事情。此外,有时将这个工具也用于可能没有直接问题的事情不是很好吗?无论如何,如果您确定这是不可能的,为什么不从中做出答案呢?
  • IntelliJ 不是无所不知的,但它也没有无限量的资源,并且这些资源用于对我们了解它们如何以及为什么存在问题的事物进行检查。

标签: java intellij-idea static-code-analysis


【解决方案1】:

IntelliJ IDEA 中没有开箱即用的功能,但可以作为第三方插件实现。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2011-03-04
    • 1970-01-01
    • 2012-06-16
    • 2017-10-19
    • 2013-03-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多