Wenn ich laufe cobertura-Maven-Plugin unter Windows 8.1 mit langwieriger Konfiguration ( zu verbieten jegliche Deckung Abfall im Projekt) cobertura:check
Ziel wird mit Fehler The command line is too long.
Das Problem verbunden ist wahrscheinlich href="https://support.microsoft.com/en-us/kb/830473"> Eingabeaufforderung (Cmd. Exe) Befehlszeilen-Zeichenfolge Einschränkung
Wie kann ich dieses Problem überwinden?
Meldet Debug-Level an:
%Vor%Eine Lösung, die ich vorschlagen kann, ist Cygwin zu installieren und dort den Befehl auszuführen. Sie können finden, wie man durch Cygwin irgendein Internet läuft. Try This Tutorial
Wenn Sie CheckCoverageMain auch direkt mit Java aufrufen, können Sie ein ant-Skript schreiben, das CheckCoverageMain aufruft und die Argumente wie unten,
, weitergibt %Vor%Und dann rufen Sie das ant-Skript über die Befehlszeile auf. Ant-Skript-Grundlernprogramm
Dies ist eine sehr einfache Problemumgehung, also poste ich es als Antwort.
Sie könnten Ihren maven build in einer Linux VM auf Ihrem Windows 8.1 PC ausführen. Richten Sie eine einfache Befehlszeilen-VM nur für diesen Zweck ein und teilen Sie Ihre Windows-Verzeichnisse damit, damit Sie nichts kopieren müssen. Es wird nicht viel anders sein, als ein Befehlszeilenfenster zu öffnen und dort mvn zu starten. VMWare Player oder VirtualBox sind kostenlos sowie Tonnen von Linux VM-Images.
Öffnen Sie dann eine Feature-Anforderung für cobertura, um das Übergeben einer Konfigurationsdatei als Argument zu ermöglichen. Betrachtet man den Quellcode von net.sourceforge.cobertura.check.CheckCoverageMain, sollte das Hinzufügen einer solchen Funktion einfach sein.
Dieses Problem tritt auf, wenn Ihr Klassenpfad zu lang wird. Es gibt auch Optionen:
Ich würde empfehlen, den zweiten Ansatz zuerst zu versuchen.
Lass es mich wissen, wenn es für dich funktioniert ...
Tags und Links java maven code-coverage cobertura maven-cobertura-plugin