Using a java framework that defines a class like this
public class FrameworkComponent {
// lots of fields
// lots of methods
public final Object getProperty(String name) { return frameworkStuff.get(name); }
// lots of other fields
// lots of other methods
}
If one tries to create a Groovy class that extends this
FrameworkComponent like the following:
class MyComponent extends FrameworkComponent {
def size = 10
}
the groovy compiler raises an error saying that MyComponent
overrides final method getProperty(String name) from
FrameworkComponent.
Attached to this issue follows bug.zip containing a mockup of this
framework and a Groovy class that extends the framework class.
To reproduce the error just unzip the file, navigate to the unzipped folder
and fire:
groovyc -cp framework.jar MyComponent.groovy
it will raise the following error lines
org.codehaus.groovy.control.MultipleCompilationErrorsException: startup failed, MyComponent.groovy: -1: You are not allowed to overwrite the final method getProperty(java.lang.String) from class 'FrameworkComponent'.
@ line -1, column -1.
1 error
IMO this issue effects our java integration story and needs to be fixed for 1.1