Skip to content

Properties added by AST transform not visible even after compilation #704

@chrylis

Description

@chrylis

This is probably related to #421 but is a distinct failure case.

I have a small utility library called GroovyBeans Toolkit (updated name as I finally got it pushed to Central). One of the features is a @GbtId annotation that inserts a JPA ID property with all the usual boilerplate, similar to the built-in @Slf4j. This annotation is working correctly with the Groovy-Eclipse plugin, and javap reports this on the class file:

public java.util.UUID getId();
public void setId(java.util.UUID);
public java.time.Instant getVersion();
public void setVersion(java.time.Instant);

So far, so good. However, the plugin itself fails to resolve these visible methods when compiling Java source code; this happens both in the editor and in Maven batch mode.

        p.setId(UUID.randomUUID());
          ^^^^^
The method setId(UUID) is undefined for the type Person

I understand the limitations of editor visibility, but seems to be more fundamental--valid joint code refuses to compile.

I have had this exact construction working before, but reverting the Maven GEP to 2.9.2-01 does not resolve it.

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions