【Groovy】Groovy 脚本调用 ( Groovy 脚本中调用另外一个 Groovy 脚本 | 调用 evaluate 方法执行 Groovy 脚本 | 参数传递 )
生活随笔
收集整理的這篇文章主要介紹了
【Groovy】Groovy 脚本调用 ( Groovy 脚本中调用另外一个 Groovy 脚本 | 调用 evaluate 方法执行 Groovy 脚本 | 参数传递 )
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
文章目錄
- 一、Groovy 腳本中調用另外一個 Groovy 腳本
- 1、調用 evaluate 方法執行 Groovy 腳本
- 2、參數傳遞
- 二、完整代碼示例
- 1、調用者 Groovy 腳本
- 2、被調用者 Groovy 腳本
- 3、執行結果
一、Groovy 腳本中調用另外一個 Groovy 腳本
1、調用 evaluate 方法執行 Groovy 腳本
在 【Groovy】Groovy 腳本調用 ( Groovy 腳本編譯 | Groovy 腳本字節碼文件分析 ) 博客中 , 已經分析了 Groovy 腳本的本質 , Groovy 腳本繼承了 groovy.lang.Script 類 ;
調用 groovy.lang.Script 類的 evaluate 方法 , 傳入 Groovy 腳本文件對應的 File 對象 , 即可執行該 Groovy 腳本 ;
/*** 一個助手方法,允許使用此腳本綁定作為變量范圍動態計算groovy表達式** @param file 要執行的 Groovy 腳本文件 */public Object evaluate(File file) throws CompilationFailedException, IOException {GroovyShell shell = new GroovyShell(getClass().getClassLoader(), binding);return shell.evaluate(file);}代碼示例 : 兩個 Groovy 腳本都在同一個目錄中 ; 在 Groovy 腳本中調用如下代碼 , 即可執行另外一個 Groovy 腳本 Script.groovy ;
evaluate(new File("Script.groovy"))2、參數傳遞
在 Groovy 腳本中 , 調用另外一個 Groovy 腳本 , 如果要傳入參數 , 直接定義 綁定作用域 args 參數 ;
args = [] args[0] = "arg0" args[1] = "arg1"這樣在被調用的 Groovy 腳本中 , 就可以獲取 上述 args 參數 ;
二、完整代碼示例
1、調用者 Groovy 腳本
// 要傳入的參數 args = [] args[0] = "arg0" args[1] = "arg1"// 調用 Script.groovy 腳本 evaluate(new File("Script.groovy"))
2、被調用者 Groovy 腳本
/*下面的 age 和 age2 都是變量定義age 變量的作用域是 本地作用域age2 變量的作用域是 綁定作用域一個是私有變量 , 一個是共有變量*/// 打印參數 println argsdef age = "18" age2 = "16"println "$age , $age2"/*定義一個函數在下面的函數中 , 可以使用 綁定作用域變量不能使用 本地作用域變量*/ void printAge() {println "$age2"//println "$age" }printAge()
3、執行結果
上面的兩個 Groovy 腳本都在相同目錄 ;
[arg0, arg1] 18 , 16 16總結
以上是生活随笔為你收集整理的【Groovy】Groovy 脚本调用 ( Groovy 脚本中调用另外一个 Groovy 脚本 | 调用 evaluate 方法执行 Groovy 脚本 | 参数传递 )的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【Groovy】Groovy 脚本调用
- 下一篇: 【Groovy】Groovy 脚本调用