在 Windows 批次檔中執行 Groovy 程式碼相當方便,例如取得 UUID:
groovy -e "println(UUID.randomUUID().toString())" echo "groovy execution finished!"
但若安裝的是 Zip 版 Groovy(非 Windows Installer 版),直接呼叫會導致後續指令不執行、批次檔直接結束。原因在於 Zip 版提供的是 groovy.bat,若不使用 call,控制權會轉移至該批次檔,無法返回。
解決方案有二:
groovy.exe。call 呼叫:call groovy -e "println(UUID.randomUUID().toString())" echo "groovy execution finished!"
加上 call 即可確保控制權返回,後續指令正常執行。