问题标签 [cpd]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
2604 浏览

java - PMD CPD 排除equals和hashcode之类的方法?

我找不到如何告诉 PMD-CPD 跳过特定方法的选项。我们使用生成的equals()hashCode()方法,因此这些方法看起来通常非常相似,CPD 将其中很多报告为重复代码。

我可以//NOPMD在代码中使用一些注释,但在我看来,这不是管理代码的方法。由于我将一个工具合并到代码中,因此与代码无关。CPD 有助于避免编码错误/样式,不应该强迫我修改我的代码。

如果有人对如何解决它有一些想法,那将非常有帮助。

最好的祝愿

0 投票
1 回答
392 浏览

scala - sbt项目的Jenkins静态代码分析

我有带有 findbugs4sbt、cpd4sbt 插件的 sbt 项目。该项目由 Jenkins 使用静态代码分析插件构建。我在编译后运行“sbt findbugs”和“sbt cpd”构建步骤,并在 Workspace 中查看 target/findbugs/report.xml 和 target/cpd/cpd.xml 文件,但在项目中看不到任何报告。如何配置 Jenkins 以显示 findbugs 和 cpd 插件的结果?

0 投票
0 回答
237 浏览

pmd - PMD 将包和导入语句检测为重复代码

PMD 中是否有任何配置可以防止其将包语句和导入语句识别为重复代码?请注意,我们将 PMD 作为声纳插件运行。

具体来说,同一包内的多个类中的包声明被检测为重复代码!

0 投票
1 回答
1209 浏览

ide - 在命令行上使用 CPD/PMD

我目前正在使用 PMD 作为外部工具,并在我正在开发的在线 java IDE 上与 ace 编辑器结合使用。但是我无法让 CPD 批处理文件工作,我已经尝试了他们在网站文档中提供的命令以及一些替代方法。如果我想搜索重复代码,有人可以给我所需的命令吗?这是我的 cpd 目录和项目源。C:\Users\Neema\Desktop\pmd-bin-5.2.2\bin C:\Users\Neema\workspace\Gillespie\src 我知道这很简单,但如果有人能提供帮助,将不胜感激。谢谢

0 投票
1 回答
299 浏览

c++ - c ++:对错误的未定义引用

我想将新的 c++ cpd 库(https://github.com/gadomski/cpd)添加到 ROS 中的一个项目中。我已经在我的 Ubuntu 操作系统中成功安装了 cpd 库。

现在我想在ROS环境下使用它。

在 CMakeList.txt 文件中,我已经添加了

然后在我刚刚添加的源代码中

以及示例代码

但是在我编译它之后,它会抛出错误: undefined reference to `cpd::NonrigidLowrank::NonrigidLowrank()'

错误:未定义对 `cpd::Registration::run(arma::Mat const&, arma::Mat const&) const' 的引用

我想cpd的库没有链接到ROS,我调用cpd库是不是做错了什么?

0 投票
1 回答
580 浏览

report - 如何更改 PMD 的复制粘贴检测器 (CPD) 报告输出

Found a X line (Y tokens) duplication in the following files: ...我想将 CPD 修改为仅在生成报告时吐出,即禁止源代码行。我有 /src/ 文件并尝试通过注释掉 /src/net/sourceforge/pmd/cpd/ 中的 SimpleRenderer.java

但是报告没有改变。我是一个 Java 新手,所以请记住这一点。我是否需要以某种方式在 Eclipse 中重建 pmd-4.2.x?

0 投票
2 回答
343 浏览

c# - 自定义插件上的 SonarQube CPD 检测

我为 SonarQube(C#、Powerbuilder 等)开发了一个自定义插件

SonarQube 的原生 CPD 传感器不执行“剪切和粘贴检测”

这有什么特殊的配置吗?

谢谢

0 投票
1 回答
1169 浏览

maven - intellij 想法:终端窗口:使文件路径/文件可点击

如果项目中存在任何代码重复实例,我正在实施 Maven CPD PMD 插件以发现并(使构建失败)。

这一切都很好。但是,intellij idea 中终端的输出错误格式为:

终端输出:

CPD 失败:在以下位置发现 31 行重复代码:

[信息] C:\Users\bob\Documents\Project\Folder\src\main\java\HelloWorld.java 第 330 行

[信息] C:\Users\bob\Documents\Project\Folder\src\main\java\HelloWorld.java 第 428 行

这工作正常,它应该怎么做,

不过,我最近有实现 Maven Check Style 插件的经验,输出错误如下所示:

[信息] C:\Users\bob\Documents\Project\Folder\src\main\java\HelloWorld.java:428

这非常有用,因为我只需单击此“文件路径”并直接转到发生此错误的文件和行,即。HelloWorld.java 在第 428 行。

所以,我的问题是,有没有办法让 intellij 想法“识别”以下形式的输出:

[信息] C:\Users\bob\Documents\Project\Folder\src\main\java\HelloWorld.java 第 428 行

并使这个“可点击”?

任何帮助或见解都将不胜感激,因为必须手动导航到课程真的很烦人:((特别是因为我有数百个错误)。

谢谢大家.. :)

0 投票
4 回答
1569 浏览

c++ - 禁止来自 CPD 的 C/C++ 代码警告

我们正在使用 PMD 复制粘贴检测器 (CPD) 来分析我们的 C 和 C++ 代码。但是,有一些代码部分非常相似,但有充分的理由,我们想禁止这些部分的警告。

PMD CPD的文档只提到了一些关于注释的内容,但这不适用于我们的这些语言。

我怎样才能仍然忽略特定部分的警告?

有没有评论可以这样做?

[更新]我正在使用以下 Groovy 脚本来运行 CPD:

0 投票
1 回答
900 浏览

jenkins - 如何使用 CPD(复制粘贴检测器)生成 xml 报告?

我正在使用 CPD 工具在我的项目中查找重复代码。我已经尝试过此链接CPD Usage中给出的命令行选项。我想以 xml 格式生成报告,并且需要将其存储在特定位置。但它在控制台本身中显示报告,而不是将其存储在任何地方。请参阅此屏幕截图。

我在 CPD GUI 中试过这个并且工作正常。但出于我的需要,我想在 xml 文件中生成报告。这可能吗?

在上面的链接中,他们提供了 ANT 工具的信息。那么有没有办法在 MSBuild 工具中做到这一点?