Java-tool zu finden - copy/ paste-code über Projekte hinweg
Geerbt haben wir einige leagcy-code, der eine ganze Menge code-copy/Paste über die Projekte. Gibt es eine Möglichkeit, diese zu finden? PMD tun können, um ein einzelnes Projekt
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zusammenfassung
Gibt es auch CloneDetective, Simian und Simscan. Dieses Papier wird von der International Conference on Software Engineering 2009 vergleicht Sie und PMD ' s CPD.
Im detail
Einem Werkzeug verarbeiten kann mehrere Sprachen, ist CloneDetective (basierend auf ConQuat, Continuous Quality Assessment Toolkit): ABAP, ADA, Java, C#, C/C++, Visual Basic, Cobol, PL1,.
Weiteres Werkzeug ist Simian, die Ähnlichkeit Analyser, die identifiziert Vervielfältigung in Java, C#, C, C++, COBOL, Ruby, JSP, ASP, HTML, XML, Visual Basic, Groovy source code und sogar plain-text-Dateien. Es läuft auf der JVM und .NET.
Tatsächlich, wenn Sie Blick auf .NETTO, es gibt eine Menge von copy-paste-detection-tools...
SimScan, die SimilarityScanner ist eine auf Eclipse/IDEA JBUILDER-plugin, das findet, vervielfältigt oder ähnliche Fragmente des Codes in großen Java-source-code-Basen. Ich weiß es nicht, und haben keine Ahnung, was "ähnliche Fragmente" bedeutet. Es klingt wie könnte es auch nur Aussehen isolatedly in einzelne Projekte, sondern die IntelliJ-Screenshots suchen nette.
Dieses Papier wird von der International Conference on Software Engineering 2009 vergleicht CloneDetective, PMD ' s CPD, Simian und Simscan.
Nur als PMD ' s copy & paste-finder ist tatsächlich aufgerufen CPD für "copy paste detector", mit diesem Begriff als terminus technicus für ' s googlen hilft. Ein weiterer Begriff, der oft verwendet wird, ist "clone detection".
Könnten Sie versuchen, mithilfe des command-line-version von PMD-CPD:
http://pmd.sourceforge.net/cpd.html
Sollten Sie in der Lage sein, um anzugeben, mehrere source-trees zu überprüfen.
Simian, die die anderen prominenten copy/paste-Detektor hat einen ähnlichen Befehl Linie Funktionen.
Finden Sie unsere CloneDR Java, ein tool für die Suche nach duplizierten code über große Mengen von code.
CloneDR findet exakte und near-miss Klone mit der Struktur des Codes (abstract syntax trees) als Richtwert, so dass es nicht verwirrt durch Leerzeichen oder Kommentar verpasst. Für die erkannten Klone, es zeigt Ihnen die Klon-Instanzen und eine parametrisierte Verallgemeinerung, die Sie verwenden können als Grundlage von Ersatz-Abstraktion (in Java, das ist ziemlich viel getan, indem Sie eine Methode; andere Sprachen haben andere Techniken).
Anderes Plakat verweist auf ein technisches Papier vergleichen-Klon-Detektoren. Wenn Sie untersuchen die Papier -, Referenz-Nummer [1] ist zu CloneDR. Die Autoren des Papiers vergleichen Sie nicht Ihren Detektor gegen CloneDR, wie Sie Ihren Detektor nur die Verwendung von tokens, nicht die anspruchsvollere Methode CloneDR hat, verwendet die Struktur der Sprache.
CloneDR arbeitet für eine Vielzahl von Sprachen: Java, C#, C++, COBOL, JavaScript, PHP, und viele andere.
Behandeln mehrere Projekte, die Sie gerade sagen, CloneDR die set-Dateien in allen Projekten.
Wenn Sie diese Projekte in einen Eclipse-workspace, Codepro Analytix gerne verbrauchen alle zusammen: https://code.google.com/javadevtools/codepro/doc/index.html
Sonar ist Recht ordentlich, das zu tun diese Art der Sache. Ich mag wirklich alle die Indikatoren, die Sie haben können...
Wenn Sie auf der Suche für ein Eclipse-Plug-in, Check-out UCDetector: Unnötigen Code-Detektor