![](/img/trans.png)
[英]GroovyScriptEngine fails to load imports of running groovy script
[英]How to load a string input(groovy script) using GroovyScriptEngine from Java
我有一個字符串輸入,這是一個groovy腳本,它包含一個或多個方法,如:
def printHello()
{
println("Inside printHello()")
}
def setData(String str)
{
println("Incoming data : " + str)
}
這是一種字符串格式,這是我的輸入。
從Java程序,我想使用GroovyScriptEngine加載此字符串。
我可以通過成功使用GroovyClassLoader來加載和調用上述方法。
new GroovyClassLoader().parseClass(scriptStr)
不幸的是,通過使用GroovyScriptEngine ,我無法加載字符串。
我將此字符串輸入存儲到臨時groovy文件中並嘗試加載。 這是工作。
但我的意圖是使用GroovyScriptEngine直接加載字符串輸入。
有沒有辦法將groovy腳本內容作為字符串輸入加載到GroovyScriptEngine而不是使用文件路徑?
請幫幫我...
注意:這是我在GroovyClassLoader和GroovyScriptEngine之間進行的比較研究。
GroovyClassLoader可以直接加載類,但不能處理它的依賴。 GroovyScriptEngine只能加載腳本而不能加載類。 但是,它可以處理類依賴和熱重新加載。
你可以在這里找到詳細信息。 http://groovy-lang.org/integrating.html
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.