阅读(329) (10)

IntelliJ IDEA分析重复项

2017-10-17 10:12:25 更新

IntelliJ IDEA 分析重复项

注意:此功能仅在 Ultimate 版本中受支持。

IntelliJ IDEA 可以帮助您在一定范围内找到重复的代码块。此范围可以是单个文件、项目、模块或自定义范围。分析结果显示在 "重复" 工具窗口的 "专用" 选项卡中。

IntelliJ IDEA 搜索重复项

  1. 执行以下操作之一:
    • 在主菜单上选择 分析| 查找重复项(Analyze | Locate Duplicates)。
    • 在编辑器或项目工具窗口的上下文菜单中选择分析|找到重复命令(Locate Duplicates)。
  2. 在 "指定代码复制分析范围" 对话框中,指定分析范围(整个项目、当前文件、未提交的文件(对于版本控制下的项目)或某些自定义范围)。此外,您还可以将测试源包含在分析中。

    单击“确定”,准备就绪。

  3. 在“代码复制分析设置”对话框中,请执行以下操作:
    1. 选择要在其中执行分析的语言。
    2. 对于每种语言,请检查选项以定义分析的首选项。

      例如,您可以选择请求相同的代码片段匹配被视为重复项,或者指定一个特定的限制,以下的代码结构不被认为是重复的(以避免报告if源代码中的每个构造)。

    单击“确定”。
  4. 在“重复”工具窗口,浏览搜索结果。
    IntelliJ IDEA 搜索重复项
    • 在工具窗口的左窗格中查看重复项列表。
    • 查看右窗格中找到的重复项之间的差异。使用箭头按钮将所选副本放在差异查看器的其中一个部分,并比较代码片段。
    • 导航到编辑器中的重复项,使用“跳转到源”或“显示重复上下文”菜单的源命令。
    • 通过单击 并在 "提取方法" 对话框中指定方法名称和参数来消除源代码中的重复项。这个程序类似于提取方法重构,唯一的区别是,在重复分析的情况下,重复的代码块被自动找到。

IntelliJ IDEA 动态检测重复项

IntelliJ IDEA 可以动态查找重复的内容。这是由检查 一般| 重复的代码((General | Duplicated Code))。

如果您偶然发现一个现有的副本,或者通过编写或粘贴代码创建一个副本,您将立即知道:

IntelliJ IDEA 动态检测重复项

检查伴随着快速修复,它使您能够导航到检测到的重复项,或在 "查找工具" 窗口中查看所有这些副本:

IntelliJ IDEA 动态检测重复项

请注意,IntelliJ IDEA 有助于避免在生成的源中找到重复项。

为此,选中该复选框可忽略在 "检查设置" 页中标记为 "生成的源" 中的重复代码:

IntelliJ IDEA 动态检测重复项