GroovyClassLoader使用方法重新编译removeClassCacheEntry

GroovyClassLoader使用方法重新编译removeClassCacheEntry,groovy,Groovy,如何使用这些方法 protected Class recompile(URL source, String className, Class oldClass) (重新)编译给定源 protected void removeClassCacheEntry(String name) 从类缓存中删除类 在我使用GroovyClassLoader的程序中,这些方法是受保护的,因为您实际上不应该直接调用它们,而且只有在您需要使用特殊逻辑扩展GroovyClassLoader(GCL)时才应

如何使用这些方法

protected Class     recompile(URL source, String className, Class oldClass)
(重新)编译给定源

protected void  removeClassCacheEntry(String name)
从类缓存中删除类


在我使用GroovyClassLoader的程序中,这些方法是受保护的,因为您实际上不应该直接调用它们,而且只有在您需要使用特殊逻辑扩展GroovyClassLoader(GCL)时才应该调用它们。GCL也只处理简单的重新编译情况,它不能处理重新编译依赖项。您应该使用GroovyScriptEngine来完成这类工作。

事实上,GroovyScriptEngine可以做得很好,但它似乎无法用相互依赖的关系编译groovy是的,我同意,那么解决方案是什么?