Ответ 1
Посмотрите Интеграция Groovy в приложения
- Получить класс Loader
- Класс нагрузки
- Создание класса.
Красота: -
Поскольку .groovy
компилируется в .class
байт-код, разбор класса даст вам instanceof
Class
. Теперь это становится всем миром JAVA, только разница, как только вы получите GroovyObject
после инстантации, вы играете вокруг методов вызова по запросу.
Изменить: просто он содержится здесь:
InputStream groovyClassIS = GroovyCompiler.class
.getResourceAsStream("/org/jboss/loom/tools/groovy/Foo.groovy");
GroovyClassLoader gcl = new GroovyClassLoader();
Class clazz = gcl.parseClass(groovyClassIS, "SomeClassName.groovy");
Object obj = clazz.newInstance();
IFoo action = (IFoo) obj;
System.out.println( action.foo());
и
package org.jboss.loom.migrators.mail;
import org.jboss.loom.tools.groovy.IFoo;
public class Foo implements IFoo {
public String foo(){
return "Foooooooooo Action!";
}
}