我正在寻找一个可刷新的groovy类加载器,我想让groovy文件在飞行中更改,我知道
GroovyScriptEngine
做了这件事,但如果我有AClass.groovy
和BClass.groovy
,我写AClass
:
Class pageClass = ClassUtils.forName("BClass", this.getClass().getClassLoader());
并且当BClass.groovy
不起作用时,自动重新加载BClass不起作用。
我认为最好的解决方案是需要一个可刷新的ClassLoader,但我找不到现有的实现。
我不是在使用春天的groovy和grails,我想要一个独立的实现。
由于
答案 0 :(得分:0)
不完全是你想要的我确定但是如果你只想用Groovy(没有Spring或Grails)来做一些事情,它允许你改变东西而不必重新启动你的应用程序,你可能会考虑做一些初步的工作使用Groovlets - > http://groovy.codehaus.org/Groovlets
这仅适用于servlet容器的工作,并且可能不会非常有用,因为你的应用程序变得很大但是它允许你最初经常更改事物并且只需调用Groovlet就可以刷新。
如果您考虑使用Spring,脚本bean是“可刷新的”,您可以使用Java的动态语言支持自己实现,但我建议您只需让Spring为您执行此操作。