希望我重新表述这个问题,使其更简单易懂。
我有大约 30 个组件(内部)进入一个 Web 应用程序。这意味着 30 个不同的项目都有自己独立的 POM。我在我的 POM 中使用了相当多的继承,因此它们继承的其中一件事是 PMD/CPD 配置以防止代码重复。
即使我运行了 CPD/PMD,它也只能检测到同一项目中的重复代码。我希望它能够在我的任何项目中检测到项目之间是否存在可以重构的共享代码。此外,我一直在寻找可以(使用相同的概念/模式)验证其他开源依赖项之间没有共享代码的东西。
它将是 CPD/PMD,但它会在源 jar 上运行。如果您扫描所有项目及其依赖项以查找重复项,此任务将消耗大量内存。现在,我只想将其应用于内部项目。如果它有效,那么扩展它会相对容易/直接。
沃尔特