[ https://issues.apache.org/jira/browse/GROOVY-7439?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14564348#comment-14564348 ]
Allen Arakaki edited comment on GROOVY-7439 at 5/29/15 7:36 AM: ---------------------------------------------------------------- FYI (for anyone that cares) ... The workaround: --------------------------- {code} import org.slf4j.Logger import org.slf4j.LoggerFactory import groovy.transform.CompileStatic import groovy.util.logging.Slf4j //@Slf4j("LOG") @CompileStatic trait TTest { final static Logger LOG = LoggerFactory.getLogger(TTest.class) void test1() { LOG.debug("Logging test1 ...") } void test2() { ((Logger)LOG).debug("Logging test2 ...") } } {code} was (Author: ikakara): FYI (for anyone that cares) ... The workaround: --------------------------- ``` import org.slf4j.Logger import org.slf4j.LoggerFactory import groovy.transform.CompileStatic import groovy.util.logging.Slf4j //@Slf4j("LOG") @CompileStatic trait TTest { final static Logger LOG = LoggerFactory.getLogger(TTest.class) void test1() { LOG.debug("Logging test1 ...") } void test2() { ((Logger)LOG).debug("Logging test2 ...") } } ``` > 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 > > Compilation errors using groovy trait and @CompileStatic and @Slf4j("LOG") > Easy to reproduce: > ------------------------------------------------ > ``` > 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 ...") > } > } > ``` > 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 ...") > ^ > ``` > 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 ...") > } > } > ``` > 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 (v6.3.4#6332)