[ https://issues.apache.org/jira/browse/GROOVY-7439?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Eric Milles updated GROOVY-7439: -------------------------------- Labels: trait traits (was: traits) > Compilation errors using groovy trait and @CompileStatic and @Slf4j("LOG") > -------------------------------------------------------------------------- > > Key: GROOVY-7439 > URL: https://issues.apache.org/jira/browse/GROOVY-7439 > Project: Groovy > Issue Type: Bug > Components: Compiler > Affects Versions: 2.4.3 > Environment: Windows 8.1 > Oracle JDK 8.u45 > Reporter: Allen Arakaki > Assignee: Eric Milles > Priority: Major > Labels: trait, traits > > Compilation errors using groovy trait and @CompileStatic and @Slf4j("LOG") > Easy to reproduce: > ------------------------------------------------ > {code} > import org.slf4j.Logger > import groovy.transform.CompileStatic > import groovy.util.logging.Slf4j > @Slf4j("LOG") > @CompileStatic > trait TTest { > void test1() { > LOG.debug("Logging test1 ...") > } > void test2() { > //((Logger)LOG).debug("Logging test2 ...") > } > } > {code} > Results in the following: > | Error Compilation error: startup failed: > ..\src\groovy\TTest.groovy: 10: [Static type checking] - Cannot find matching > method java.lang.Object#debug(java.lang.String). Please check if the declared > type is right and if the method exists. > @ line 10, column 5. > LOG.debug("Logging test1 ...") > ^ > {code} > import org.slf4j.Logger > import groovy.transform.CompileStatic > import groovy.util.logging.Slf4j > @Slf4j("LOG") > @CompileStatic > trait TTest { > void test1() { > //LOG.debug("Logging test1 ...") > } > void test2() { > ((Logger)LOG).debug("Logging test2 ...") > } > } > {code} > Results in the following error: > | Error Compilation error: startup failed: > ..\src\groovy\TTest.groovy: -1: Access to TTest#LOG is forbidden @ line -1, > column -1. -- This message was sent by Atlassian Jira (v8.20.10#820010)