classreloadingtest.groovy
来自「大名鼎鼎的java动态脚本语言。已经通过了sun的认证」· GROOVY 代码 · 共 44 行
GROOVY
44 行
package groovy.langclass ClassReloadingTest extends GroovyTestCase { public void testRealoding() { def file = File.createTempFile("TestReload",".groovy", new File("target")) file.deleteOnExit() def className = file.name-".groovy" def cl = new GroovyClassLoader(this.class.classLoader); def currentDir = file.parentFile.absolutePath cl.addClasspath(currentDir) cl.shouldRecompile = true try { file.write """ class $className { def hello = "hello" } """ def groovyClass = cl.loadClass(className,true,false) def object = groovyClass.newInstance() assert "hello"== object.hello sleep 1000 // change class file.write """ class $className { def hello = "goodbye" } """ file.lastModified = System.currentTimeMillis() // reload groovyClass = cl.loadClass(className,true,false) object = groovyClass.newInstance() assert "goodbye" == object.hello } finally { file.delete() } }}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?