#groovy
Вопрос:
Как вызвать метод groovy, который выводит в stdout, добавляя вывод в строку?
Ответ №1:
Это демонстрирует, как вы можете это сделать. Вставьте это в отличный файл сценария и запустите его. Вы увидите, что функции первого вызова работают в обычном режиме. Второй вызов не дает никаких результатов. Наконец, последний шаг в главном выводит результаты второго вызова, которые были перенаправлены в поток bytearrayoutput.
Получайте удовольствие!
void doSomething() {
println "i did something"
}
println "normal calln---------------"
doSomething()
println ""
def buf = new ByteArrayOutputStream()
def newOut = new PrintStream(buf)
def saveOut = System.out
println "redirected calln---------------"
System.out = newOut
doSomething()
System.out = saveOut
println ""
println "results of calln---------------"
println buf.toString()
Ответ №2:
Я не уверен, что вы подразумеваете под «добавлением вывода в строку», но вы можете распечатать по стандарту, используя «печать» или «println».