如何在运行播放命令时关闭颜色代码?

时间:2014-03-26 15:21:07

标签: playframework jenkins playframework-2.0 sbt color-codes

当我运行播放命令时,日志在终端中出现了很好的颜色和干净,但是当我在Jenkins中构建我的应用程序时,那里的日志会显示颜色代码,让它们难以阅读。

命令行日志:

[info] ApplicationSpec
[info] Application should
[info] + send 404 on a bad request
[info] x render the index page
[error]    '401' is not equal to '200' (ApplicationSpec.scala:25)
[info] Total for specification ApplicationSpec
[info] Finished in 134 ms
[info] 2 examples, 1 failure, 0 error
[error] Failed: Total 3, Failed 2, Errors 0, Passed 1
[error] Failed tests:
[error]     ApplicationSpec
[error]     IntegrationSpec
[error] (test:test) sbt.TestsFailedException: Tests unsuccessful
[error] Total time: 23 s, completed Mar 26, 2014 10:00:34 AM

Jenkins记录:

[0m[[0minfo[0m] [0mApplicationSpec[0m
[0m[[0minfo[0m] [0mApplication should[0m
[0m[[0minfo[0m] [0m[32m+[0m send 404 on a bad request[0m
[0m[[0minfo[0m] [0m[33mx[0m render the index page[0m
[0m[[31merror[0m] [0m   '401' is not equal to '200' (ApplicationSpec.scala:25)[0m
[0m[[0minfo[0m] [0mTotal for specification ApplicationSpec[0m
[0m[[0minfo[0m] [0m[34mFinished in 229 ms[0m[0m
[0m[[0minfo[0m] [0m[34m2 examples, 1 failure, 0 error[0m[0m
[0m[[31merror[0m] [0mFailed: Total 3, Failed 2, Errors 0, Passed 1[0m
[0m[[31merror[0m] [0mFailed tests:[0m
[0m[[31merror[0m] [0m   ApplicationSpec[0m
[0m[[31merror[0m] [0m   IntegrationSpec[0m
[0m[[31merror[0m] [0m(test:[31mtest[0m) sbt.TestsFailedException: Tests unsuccessful[0m
[0m[[31merror[0m] [0mTotal time: 6 s, completed Mar 25, 2014 2:28:01 PM[0m

正如您所看到的,Jenkins输出仍然具有相同的内容,但颜色代码使它如此嘈杂,以至于很难弄清楚发生了什么。

我发现limited information关于如何为SBT工具关闭颜色代码,但我无法弄清楚如何通过Jenkins运行我的构建时通过play命令传递此代码

2 个答案:

答案 0 :(得分:3)

事实上我也好奇(有同样的问题)所以检查了你发送的建议:)

答案是:

play -Dsbt.log.noformat=true dist

或者(如果更多的参数应该像非默认端口号一样发送到控制台)通常:

play -Dsbt.log.noformat=true "~run 9123"

答案 1 :(得分:2)

或者您可以安装 Ansi-Color Jenkins插件,实际上在Jenkins的日志中有