分析重复项
IntelliJ IDEA 通过 重复的代码片段 检查 帮助您在某些文件中找到重复的代码块。 如果您通过编写或粘贴代码创建了重复项,IntelliJ IDEA 会立即突出显示并建议快速修复。
检查功能开箱即用,并且具有 若干设置 ,您可以更改这些设置以调整其行为。
要同时查看所选文件集中所有重复项,请 按名称运行检查。

配置检查
按 Ctrl+Alt+S 打开设置,然后选择 。
确保在 个人资料 列表中选择必要的 inspection profile。
在 检查 对话框的搜索字段中,输入
duplicated code fragment以在列表中找到检查。一旦您点击检查,其设置将出现在右侧。
应用更改并关闭对话框。

搜索重复项时忽略名称和值
对于每种文件类型,您可以定义仅名称或值不同的相同实体是否应被视为重复。
按 Ctrl+Alt+S 打开设置,然后选择 。
选择要应用分析的文件类型,并选中要匿名化的结构旁边的复选框。
应用更改并关闭对话框。
此对话框还允许您完全排除某种语言的分析和索引。 如果您在此页面禁用一种语言,该语言将在 检测设置中隐藏。

禁止检查
当您抑制检查时,代码分析引擎不会在特定的代码部分(类、方法、字段或语句)中突出显示此检查发现的问题。
将文本光标放置在要取消检查的代码元素上,然后按 Alt+Enter。
点击
旁边的箭头 像这样显示所有重复项 操作,然后选择所需的抑制操作。

有关更多信息,请参见 禁止检查。
禁用此检查
当您禁用检查时,您就会将其关闭。 这意味着代码分析引擎将停止在项目文件中搜索此检查旨在检测的问题。
将文本光标放置在您要禁用检查的代码元素处,然后按 Alt+Enter。
点击箭头
旁边的 像这样显示所有重复项 操作并选择 禁用检查。

要重新启用检查,请转到 并选中 重复的代码片段 旁边的复选框。
有关更多信息,请参见 禁用检查。
手动查找重复项(已弃用)
在主菜单中,前往 。
在 指定代码重复分析范围 对话框中,指定分析范围:整个项目、当前文件、未提交的文件(对于版本控制下的项目)或一些自定义范围。 此外,您还可以在分析中包含测试源代码。
在 代码重复分析设置 对话框中,选择您想要解析的语言。
您可以为每种语言检查选项以确定分析偏好。 例如,您可以选择请求将完全匹配的代码片段视为重复项,或指定一个下限,低于该下限的代码结构不会被视为重复项(例如,为了避免报告源代码中的每个
if结构)。
在 Duplicates 工具窗口中,查看分析结果。

指定代码重复分析范围
条目 | 描述 |
|---|---|
整个项目 | 检查整个项目。 |
模块 <name> | 检查当前在 项目 工具窗口 Alt+1 中选择的模块。 |
文件<名称> | 检查当前在 项目 工具窗口中选择或在编辑器中打开的文件。 |
选定的文件 | 检查当前在 项目 工具窗口中选择的文件。 |
未提交的文件 | 该作用域仅适用于版本控制下的项目。 仅检查尚未提交到版本控制系统的文件。 |
目录 | 检查当前在 项目 工具窗口中选择的目录。 |
自定义作用域 | 检查自定义文件范围。 从列表中选择一个预定义范围,或点击 |
包含测试代码 | 检查包含在分析范围内的测试源文件。 |
检查注入代码 | 检查嵌入到您的代码中的 其他语言的代码片段。 |
代码重复分析设置
使用此对话框定义搜索的敏感度,并设置限制,以帮助您避免报告每个类似的代码构造。 您的偏好已在特定语言环境中指定。
条目 | 描述 |
|---|---|
Java | 匿名化元素意味着定义是否应将仅名称或值不同的相同实体视为重复项。 选择要匿名化的元素:
配置重复参数:
|
ActionScript ECMAScript 6 Flow JS Groovy JavaScript TypeScript TypeScript JSX | 匿名化元素意味着定义是否应将仅名称或值不同的相同实体视为重复项。 选择要匿名化的元素:
配置重复参数:
|
CSS |
|
XHTML XML HTML 文件 |
|