處理java調用groovy :unable to resolve class異常

 

使用java調用groovy,在windows開發環境下的代碼如下:

GroovyScriptEngine scriptEngine = new GroovyScriptEngine(System.getProperty("user.dir") + "/data/groovy");

 Eclipse跑程序沒有任何問題,但是當部署到linux環境以後就出現了下列bug,死活過不去了...

 

org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed:
file:/data/webgame/gameserver/data/groovy/vip.groovy: 2: unable to resolve class com.ages.newitem.model.VipRoulette
 @ line 2, column 1.
   import com.ages.newitem.model.VipRoulette
   ^

 VipRoulette這個類是java項目中的,很明顯groovy對此沒買賬,根據異常信息猜測可能是classload的問題.

於是加了一個參數

 

GroovyScriptEngine scriptEngine = new GroovyScriptEngine(System.getProperty("user.dir") + "/data/groovy", this.getClass().getClassLoader());

 

 這樣一來groovy和java就都在一個類加載器中,這樣就可以互通有無了...

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章