Tim Yates created GROOVY-10764:
----------------------------------
Summary: Static interface methods are not callable on implementing
class
Key: GROOVY-10764
URL: https://issues.apache.org/jira/browse/GROOVY-10764
Project: Groovy
Issue Type: Bug
Affects Versions: 4.0.5
Reporter: Tim Yates
This is another issue that may be working as expected. I searched, but
couldn't find anything...
Given a Java interface:
{code:java}
public interface Interface {
static void woo() {
System.out.println("woo");
}
} {code}
And a Java class which implements it
{code:java}
public class Concrete implements Interface {
} {code}
In Groovy 4.0.5, it is no longer possible to call the static method on the
implementing class. ie:
This groovy:
{code:java}
Concrete.woo() {code}
Throws
{code:java}
Caused by: groovy.lang.MissingMethodException: No signature of method: static
groovybug.Concrete.woo() is applicable for argument types: () values: []
Possible solutions: wait(), any(), wait(long), any(groovy.lang.Closure),
is(java.lang.Object), tap(groovy.lang.Closure)
at app//groovybug.Main.run(Main.groovy:6) {code}
Wheras in Groovy 3.x (and Java) it is valid.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)