首页 文章

Groovy类加载器问题

提问于
浏览
1

我在eclipse环境中使用groovy和java来开发UI应用程序 . 我想在我的代码中使用groovy类加载器,所以我使用传统的方式来获取Groovy类加载器:

def str = new File("C:/myGroovyFile.groovy").getText()
def myclass = getClass();
println myclass //facing issue here
ClassLoader parent = myclass.getClassLoader();
GroovyClassLoader loader = new GroovyClassLoader(parent);
Class groovyClass = loader.parseClass(str);

这里我面临的问题是,在eclipse环境中调用时的getClass()没有返回GroovyCOnsole脚本,而是返回java.lang.class,调用时getClassLoader()返回null .

我想获取getClass()的groovy控制台脚本,这反过来可以用来动态加载位于C:\的groovy文件

请告诉我如何解决这个问题 .

PS:我试图将此代码放在名为initialize()的方法中 . 只要此代码在主类中,它就可以工作,但是当我将上述代码包含在自定义用户定义函数中时,它不起作用 . 为什么会这样?

1 回答

相关问题