自动重构工具可以找到类似的 Java/Javascript 重复源代码吗? [关闭]

2023-11-27

我正在寻找一个工具来查找重复或similarJava/Javascript 代码。我无法说出“的确切定义”similar”,但我希望该工具足够智能,并为我提供重构代码的建议,例如,

(1) A类和B类有相似的方法(例如,两个类中有5个方法具有相同的方法名称、参数和相似的实现),那么应该建议将这些相似的方法移到基类中。
(2) A 类在不同位置多次有相似的代码行,该工具应建议将这些相似的代码行移至单个方法中。

I tried PMD它可以找到重复的代码行,但不够聪明。并没有发现那些similar源代码在我的一个项目中广泛传播。

有这样的工具吗?


我没用过智能IDEA以前,但我发现它支持分析重复项及其终极版本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

自动重构工具可以找到类似的 Java/Javascript 重复源代码吗? [关闭] 的相关文章

随机推荐

  • pandas:从 pandas 表中的日期中减去当前日期

    我正在尝试计算今天与由历史数据组成的 pandas 数据之间的天数差异 下面是预期的代码 df diff pd to datetime df date pd datetime now date 但是 它会产生以下错误 类型错误 不支持的操作
  • 如何使用jquery使图像沿圆形路径移动?

    在这里 我试图使图像沿圆形路径移动 但它没有沿圆形路径移动 我已经尝试过这样的缓慢移动图片 CSS friends position absolute Markup img src http jsfiddle net img logo pn
  • 如何让“git log”显示“svn log -v”等文件名

    SVN 的日志有一个 v 模式 它输出每次提交中更改的文件的文件名 如下所示 jes5199 svn log v r1 jes5199 2007 01 03 14 39 41 0800 Wed 03 Jan 2007 1 line Chan
  • 我可以在 iOS 的 Core Text 中使用 NSAttributedString 吗?

    我正在尝试弄清楚如何获取 NSAttributedString 并在 iPad 上的 Core Text 中使用它 我观看了 WWDC 视频 110 之一 其中有幻灯片 但没有源代码 它描述了如何创建 NSAttributedString
  • 如何在 PHP 中使用 Word Net

    如何在 php 中使用 word Net 是否有任何接口或任何类 我需要使用 wordnet 来实现我的词典目的 在下载页面上可以使用命令行工具进行下载 如果你启用了 exec 你可以从 php 使用它 http wordnet princ
  • 与 Qt 静态链接的应用程序出现错误:无法加载平台插件“windows”

    我已经在 Windows 7 x64 下的 VS 2010 中静态构建了 Qt 5 0 1 配置参数是 configure debug and release opensource confirm license platform win3
  • 使用 Jackson JSON 视图而不注释原始 bean 类

    有什么方法可以使用 Jackson JSON Views 或类似的东西 而不必注释原始 bean 类 我正在寻找某种运行时 动态配置来让我做类似的事情 我的豆子是一个 Entity打包在可由多个项目共享的 JAR 中 由于使用项目中的 UI
  • pandas sort_values 函数中 axis=1 的含义是什么? [复制]

    这个问题在这里已经有答案了 我有以下代码片段 df pd DataFrame col1 A A B np nan D C col2 2 1 9 8 7 4 col3 0 1 9 4 2 3 print df sorted df sort v
  • 如何使用 Delphi 7 将文本文件从 ANSI 转换为 UTF-8?

    我用 Delphi 7 编写了一个程序来搜索 srt硬盘上的文件 该程序在备忘录中列出这些文件的路径和名称 现在我需要将这些文件从 ANSI 转换为 UTF 8 但我还没有成功 Utf8Encode 函数采用 WideString 字符串作
  • 创建 ruby​​ C++ 扩展

    我使用 C 类创建了一个示例 ruby 扩展 当我没有解析该值时它工作正常 但是当我解析参数时它显示错误 这是我的代码 C 头文件 ifndef CIRCLE H define CIRCLE H class Circle public Ci
  • R 中的桑基图

    尝试在 R 的帮助下制作一个相当通用的桑基图networkD3包裹 仅供参考 这是软件包手册中的示例 library networkD3 library jsonlite library magrittr energy lt https c
  • 从 AngularJS Web 应用程序发送电子邮件

    在我的一个 AngularJS Web 应用程序中 我需要通过向相关人员发送电子邮件来确认密码 我怎样才能在 AngularJS 中实现这一点 我是一名 NET 人员 我正在使用 Visual Studio 2013 您还可以考虑使用第三方
  • WPF 子控件的鼠标悬停触发效果

    假设我有这段代码
  • 我的网站的移动版,什么设计宽度是最佳的? [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 我要创建移动版本的网站 设计时应该选择什么宽度 我知道每个设备都有自己的屏幕宽度 并且很难适应所有设备 我真的很困惑 对移动网站世界来说相当陌生 请帮忙 谢谢 您的方法将取决于您想要 或可
  • Node.js 有模板引擎吗? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 我正在尝试使用 Node
  • 删除 iOS UIBarButtonItem 的标题文本

    我想做的是从 后退 按钮中删除文本UIBarButtonItem 在导航栏上只留下蓝色 V 形 请记住 我正在针对 iOS 7 进行开发 我尝试了多种方法 包括但不限于 这是我不喜欢的图像方法 图像看起来不合适 UIBarButtonIte
  • 在 jupyter 中使用带有 bash 魔法的 python 变量

    我想使用 jupyter 笔记本中运行 bash 命令 bash魔术命令并传递 python 变量 如中所述这个帖子我可以这样做 bash s foo bar cp 1 2 这很好用 然而 当我有一堆这些变量并且 bash 命令很长时 使用
  • MediaRecorder 启动失败:-38

    我搜索了一下这个问题是否没有重复 我看到有些没有答案 有些没有帮助 这是我的代码 private void startRecording mRecorder new MediaRecorder mRecorder setAudioSourc
  • 如何捕获 printf 的输出?

    我正在调用一个函数funcB from funcA funcB使用几个printf语句来输出数据 有没有办法让我通过捕获该数据funcA 我无法修改funcB funcB printf s My Name is printf s I lik
  • 自动重构工具可以找到类似的 Java/Javascript 重复源代码吗? [关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 目前不接受答案 我正在寻找一个工具来查找重复或similarJava Javascript 代码 我无法说出 的确切定义 similar 但我希望该工具足够智能 并