【发布时间】:2014-05-14 14:17:18
【问题描述】:
我有一个 Python 脚本打印字符串。现在在 Jenkins 中运行它时,我没有在 Jenkins 构建的控制台输出中看到打印的字符串。
无论如何要做到这一点?
【问题讨论】:
我有一个 Python 脚本打印字符串。现在在 Jenkins 中运行它时,我没有在 Jenkins 构建的控制台输出中看到打印的字符串。
无论如何要做到这一点?
【问题讨论】:
在运行 python 脚本时尝试使用-u (unbuffered) 选项。
python -u my_script.py
【讨论】:
从 Jenkins 生成的进程到 stdout 的任何输出都应由控制台输出捕获。需要注意的是,在打印换行符之前它不会显示,因此请确保您的行已终止。
如果您以某种奇怪的方式启动 python,将它与 Jenkins 父进程解除关联,那么我无法帮助您。
【讨论】:
我相信你需要做的是flush,试试:
import sys
sys.stdout.flush()
应该有帮助。
【讨论】: