2013-02-28 9 views
11

Ich bin mit einem Grunzen-contrib-jshint Befehl jenkins mit und die Ausgabe der Konsole wird, enthält Text wie:Jenkins Konsolenausgabe hat diese seltsamen Zeichen aus Grunzen Befehl [31m [[39m ...

[31m[[39m[33mL425[39m[31m:[39m[33mC29[39m[31m][39m [33mExpected a conditional expression and instead saw an assignment.[39m 

Irgendwelche Ideen warum? und wie man es repariert.

das gleiche Skript laufen direkt anzeigt:

[L425:C29] Expected a conditional expression and instead saw an assignment. 

ich die file.encoding Einstellung überprüft haben, die zu MacRoman gesetzt wurde und nach export JAVA_TOOL_OPTIONS=-Dfile.encoding=UTF-8 Einstellung ist nun UTF-8.

Antwort

24

Diese sehen aus wie Farb-Escape-Sequenzen. Sehen Sie, wenn Sie einen Parameter wie --no-color an den Befehl übergeben können (wenn das Werkzeug unterstützt, sehen this vielleicht), oder sehen Sie die AnsiColor plugin

+0

Danke, Hinzufügen der Option --no-color zu Grunt behoben das Problem –

0

Es sieht aus wie Steuerbefehle färben, die von Ihrer Shell ignoriert werden. Um es zu beheben, kann es bedeuten, das Skript so zu ändern, dass es diese Ausgabe nicht erzeugt.

+0

Vielen Dank für Ihre Antwort –

1

Was für mich gearbeitet ist ...

play -Dsbt.log.noformat=true clean compile test dist 

Die - Dsbt.log.noformat = true hat die Farbgebung der Konsolenausgabe auf meinen Play 2.1.1-Builds unterdrückt, wodurch sich die Konsole auf Jenkins lesbar anmeldet. Nun, wie erhalten Sie die Testergebnisse auf eine weniger XMLy Weise?

6

Alternativ können Sie, wenn Sie Farben mögen, Jenkins AnsiColor Plugin verwenden, um die Farb-Escape-Sequenzen im Build-Protokoll korrekt anzuzeigen.

0

Ich habe unterschiedliche Lösung für dieses ganze Problem. Tatsächlich hat keiner der oben aufgeführten Vorschläge für mich funktioniert. Ich benutzte zwei Arten von Sklaven: CentOS und Ubuntu Maschinen. Aus irgendeinem Grund betraf das Problem nur die CentOS-Maschinen, nicht die Ubuntu-Maschinen.

Ich verglich die "System Information" für die zwei Arten von Slaves und ich fand heraus, dass die Datei.encoding ANSI_X3.4-1968 auf CentOS-Hosts gesetzt ist. Dies ist der Standardwert. Der Ubuntu-Standard ist UTF-8.

Der Neustart des Slaves mit der erweiterten JVM-Option -Dfile.encoding=UTF-8 hat also den Zweck erfüllt, ohne dass die Mocha-Farben unterdrückt werden müssen.