Details

    • Type: Sub-task Sub-task
    • Status: Closed
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 1.1-beta-2
    • Component/s: None
    • Labels:
      None

      Description

      by generating stubs for the groovy files it is possible to let the java files compile without using the real groovy files, but java files, that are equal enough to produce compatible bytecode. the Groovy compiler will then compile the .groovy files, which overwrites the .class files generated from the stubs. This way it is not possible to compile groovy files that are not part of the list of files to compile. That means for example if I do "groovyc C.groovy B.java" and B.java depends on a file A.groovy, then this will not compile, because the groovy compiler is not able to reuse the information of the java compiler that a lookup for a A.groovy is needed. Instead. to compile this, "groovyc A.groovy B.java C.groovy" is needed. All files must be known before. This is also the reason that this solution will not compile at runtime, because a discovery mechanism for java files depending on groovy files would be needed and that is not doable by stubs, not wihtout additional information provided by the compiler.

        Activity

        Jochen Theodorou created issue -
        Hide
        Jochen Theodorou added a comment -

        thanks to Alex Tkachman for provding an initial solution for this. I committed a modified version of his idea where the ResolveVisitor itself is unchanged and the compilation operations are used instead. The stub generator is the same.

        Show
        Jochen Theodorou added a comment - thanks to Alex Tkachman for provding an initial solution for this. I committed a modified version of his idea where the ResolveVisitor itself is unchanged and the compilation operations are used instead. The stub generator is the same.
        Jochen Theodorou made changes -
        Field Original Value New Value
        Resolution Fixed [ 1 ]
        Status Open [ 1 ] Closed [ 6 ]
        Mark Thomas made changes -
        Project Import Sun Apr 05 13:32:57 UTC 2015 [ 1428240777691 ]
        Mark Thomas made changes -
        Workflow jira [ 12731061 ] Default workflow, editable Closed status [ 12743003 ]
        Mark Thomas made changes -
        Project Import Mon Apr 06 02:11:23 UTC 2015 [ 1428286283443 ]
        Mark Thomas made changes -
        Workflow jira [ 12972715 ] Default workflow, editable Closed status [ 12980392 ]
        Transition Time In Source Status Execution Times Last Executer Last Execution Date
        Open Open Closed Closed
        2m 7s 1 Jochen Theodorou 24/Jun/07 11:09

          People

          • Assignee:
            Jochen Theodorou
            Reporter:
            Jochen Theodorou
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development