groovy
  1. groovy
  2. GROOVY-2326

Groovy objects trying to override final methods

    Details

    • Type: Bug Bug
    • Status: Closed Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 1.0, 1.1-rc-2
    • Fix Version/s: 1.5
    • Labels:
      None
    • Environment:
      Windows XP
      Groovy Version: 1.0 JVM: 1.6.0-b105
      Groovy Version: 1.1-rc-2 JVM: 1.6.0-b105

    • Number of attachments :
      1

      Description

      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

        Issue Links

          Activity

          Hide
          Graeme Rocher added a comment -

          IMO this issue effects our java integration story and needs to be fixed for 1.1

          Show
          Graeme Rocher added a comment - IMO this issue effects our java integration story and needs to be fixed for 1.1
          Hide
          blackdrag blackdrag added a comment -

          fixed

          Show
          blackdrag blackdrag added a comment - fixed

            People

            • Assignee:
              blackdrag blackdrag
              Reporter:
              Reginaldo Delfino
            • Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: