ObjectinvokeFunction(String name
用於調用腳本中定義的頂層程序和函數
ObjectinvokeMethod(Object thiz
對以前的腳本執行中已經編譯的腳本對象(以 ScriptEngine 的狀態保持)調用某一方法
package de
import javax
import javax
import javax
import java
import java
import java
public class AjavaInvokingFunction {
public static void main(String[] args) {
// 獲得一個JavaScript腳本引擎
ScriptEngineManager manager = new ScriptEngineManager()
ScriptEngine engine = manager
String titlescript =
+
+
+
try {
// 調用內部腳本執行
engine
// 轉換為Invocable
Invocable invocableEngine = (Invocable) engine;
// 不帶參數調用sayTitle方法
invocableEngine
// 調用外部腳本執行
// 創建JS文件的File對象
File functionscript = new File(
Reader reader = new FileReader(functionscript)
// 開始執行ajava
engine
// 不帶參數調用sayHello方法
invocableEngine
// 帶參數調用sayHello方法
invocableEngine
} catch (Exception e) {
e
}
}
}
ajava
function sayHello(){
sayHello(null)
}
function sayHello(name){
if(name==null){
println(
}else{
println(name+
}
}
運行結果(控制台)
源碼實例
From:http://tw.wingwit.com/Article/program/Java/hx/201311/26436.html