Почему stdout пуст при запуске "python --version" из groovy? - PullRequest
2 голосов
/ 23 мая 2019

В настоящее время я работаю над сценарием предварительной проверки для проекта Apache PLC4X. Там я проверяю наличие необходимых сторонних инструментов и их версий.

Если я запускаю «python --version» в командной строке, я получаю хороший ответ.

Однако, если я запускаю его в Groovy:

print "Detecting Python version: "
def output = ("python --version").execute().text

Я просто получаю пустую строку. Все остальные инструменты не показывают это поведение. Все остальные имеют консольный вывод в «output».

Как я могу сделать чек, который хочу сделать? Что я делаю не так?

1 Ответ

2 голосов
/ 23 мая 2019

Не думайте, что все, что вы видите на терминале, поступает через стандартный вывод.

Вместо этого информационные сообщения часто отправляются со стандартной ошибкой, чтобы избежать их попадания в какие-либо конвейеры обработки (именно поэтому дваканалы были созданы еще в первые дни UNIX).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...