是否可以在Intellij中禁用重复代码检测?

zud*_*duz 130 intellij-idea

是否可以在Intellij中禁用重复代码检测?

我没有发现这个功能有用,它继续分散我的注意力.

Voj*_*cka 182

要切换它,请转到其他设置→编辑器→检查→常规→重复代码.

您可以在那里使用搜索字段来查找特定项目.

在此输入图像描述

  • IDEA社区版不提供此选项. (4认同)
  • @takias重复代码检测根本不是社区版的功能.它只出现在Ultimate版本中. (4认同)
  • 实际上,在您关闭要使用的文件并重新打开它或在应用这些设置后重新启动IDE后,它才可以工作 (2认同)

Max*_*ass 143

在代码中添加提示,以便其他人知道您的意图:

@SuppressWarnings("Duplicates")
Run Code Online (Sandbox Code Playgroud)

  • 最佳解决方案可以在有意复制的情况下抑制交战. (11认同)
  • 你在开玩笑?添加代码来弥补IDE的不足? (3认同)
  • 这是技术答案,谢谢 (2认同)
  • ^ 这样做,不要完全禁用它。除某些地方外,重复代码是代码异味 (2认同)

Kev*_*ght 12

是的,这是可能的,但我强烈建议反对它!

重复代码是一种技术债务形式.任何包含错误的重复代码意味着你现在有一个重复的错误 - 然后你冒的风险是,当你修复它时,你只能在一个地方修复它,副本将保留...

如果重复的代码警告会分散你的注意力,那么摆脱它们的最佳策略是删除代码重复 ...你的代码库和未来的维护者会感谢你的

  • 好的,但有时候我有旧版本和同一类的新版本.有重复是正常的,我不需要警告.它只是非常具有侵入性,并隐藏了许多其他有用的警告.这个问题是合法的. (32认同)
  • 它并不总是像摆脱所有重复一样简单!例如,在Web控制器中存在许多相似性,其标记为重复,它们不是精确的重复.保持控制器逻辑分离的好处在很多方面都很有用,这只是一个例子.务实而非纯粹主义者根据我的经验获得项目. (5认同)
  • 你声称这是可能的,但你没有描述如何.在很多情况下,尝试和抽象是没有意义的.请至少说"是的,这是怎么样,但是......" (4认同)
  • 这个答案根本与问题无关。 (3认同)
  • 同意这是一种气味.然而,我发现IntelliJ会在检测到重复代码时冻结几秒钟.对我来说这很烦人. (2认同)
  • 我发现它错误地用于具有类似设置的单元测试.即使我确实相当显着地改变了测试,有时我也无法让它消失. (2认同)
  • 在单元测试中重复是可以的(为了可读性),所以我不同意这里。 (2认同)

Emd*_*won 7

这个答案可能有点无关紧要,但我发现这很有帮助,如果您想针对特定代码块而不是整个方法或类或 ide 禁用它,则从这个答案中,只需在该代码块之前添加以下行

//noinspection Duplicates
Run Code Online (Sandbox Code Playgroud)

注意:您不能在此行之后放置任何其他注释。