[ https://issues.apache.org/jira/browse/GROOVY-5728?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15857927#comment-15857927 ]
Peter Myrén commented on GROOVY-5728: ------------------------------------- Same problem with non anonymous inner class. It woks with protected constructor though. {code} public abstract class FooMain { protected FooMain() {} public abstract String bar(); public static FooMain factory() { return new FooMain() { public String bar() { return "xxx"; } }; } public static void main(String[] args) { System.out.println(factory().bar()); } } {code} Tested with groovy 2.4.8 > Accessing private constructor from a static factory > --------------------------------------------------- > > Key: GROOVY-5728 > URL: https://issues.apache.org/jira/browse/GROOVY-5728 > Project: Groovy > Issue Type: Bug > Components: groovy-runtime > Affects Versions: 2.0.4, 2.4.0-beta-3 > Reporter: Paul King > Priority: Minor > > The following code works fine from Java but fails in Groovy: > {code} > public abstract class FooMain { > private FooMain() {} > public abstract String bar(); > public static FooMain factory() { > return new FooMain() { > public String bar() { return "xxx"; } > }; > } > public static void main(String[] args) { > System.out.println(factory().bar()); > } > } > // => java.lang.IllegalAccessError: tried to access method FooMain.<init>()V > from class FooMain$1 > {code} -- This message was sent by Atlassian JIRA (v6.3.15#6346)