我正在开发一个grails应用程序,我需要修改一个插件中的groovy类,所以我决定覆盖该类,所以我在我的插件中有这些方法和类:
def example = new a();
a.method();
class a {
void method() {
println "2";
}
}
这一切都在插件内部,所以我想在我的项目中的同一个包中创建另一个类来改变方法,但是如何设置我的新类来运行而不是插件呢?还是不可能?
class a {
void method() {
println "4";
}
}
答案 0 :(得分:1)
是的,你可以。它被称为类阴影。但我会在大多数时候反对它。你只需要让jvm在插件类之前加载你的类。
答案 1 :(得分:1)
是的,您只需要确保您的课程在插件版本之前的类路径中。