调用自定义命令时,我注意到只显示了日志。例如,如果我的自定义命令脚本包含一个回归语句return "great custom command"
,我就无法在结果中找到它。在API Java客户端或shell执行情况下。
如果能够在执行结束时检索该结果,我该怎么办?
感谢。
服务描述文件中的命令定义:
customCommands ([
"getText" : "getText.groovy"
])
getText.groovy文件内容:
def text = "great custom command"
println "trying to get a text"
return text
答案 0 :(得分:1)
假设您的服务文件包含以下内容:
customCommands ([
"printA" : {
println "111111"
return "222222"
},
"printB" : "fileB.groovy"
])
fileB.groovy包含以下代码:
println "AAAAAA"
return "BBBBBB"
然后,如果您运行以下命令:调用yourService printA
你会得到这个:
调用结果: 1:来自实例#1 ......,结果:222222
调用成功完成。
如果您运行以下命令:调用yourService printB
你会得到这个:
调用结果: 1:来自实例#1 ......,结果:AAAAAA
调用成功完成。
因此,如果您的自定义命令的实现是Groovy闭包,那么它的结果就是它的返回值。
如果你的自定义命令的实现是一个外部Groovy文件,那么它的结果就是它的最后一个语句输出。
HTH,
塔米尔。