Are you using the Gradle build cache ?Have you tried building the code using
the IntelliJ build system (I am not sure if you mean that by "In IntelliJ this
is not flagged up as an issue either" or that only Intellisense does not
complain) ?
Cheers,mg
-------- Ursprüngliche Nachricht --------Von: Schalk Cronjé <[email protected]>
Datum: 23.04.18 12:05 (GMT+01:00) An: [email protected] Betreff: Java
does not see method implemented in Groovy
Hi all,
I have build an hierarchy that effectively looks like:
Abstract Base #1 (Java)
^
|
Abstract Base #2 (Groovy, CompileStatic)
^
|
Abstract Base #3 (Groovy, CompileStatic)
^
|
Abstract Base #4 (Groovy, CompileStatic) <- Implements
methodA from Abstract Base #1
^ ^ ^
| | |
ExampleG (Groovy) ExampleJ (Java) ExampleK (Kotlin)
Finally there are three examples - one each in Groovy, Java and
otlin example. They extend #4 with concrete classes. The Groovy
and Kotlin examples compile fine, but the Java complains that
methodA is not implemented. The real signature of methodA is
actually
SeekableByteChannel newByteChannel(Path path, Set<?
extends OpenOption> options, FileAttribute<?>[]
attrs) throws IOException
This could be down to what the Groovy compiler (2.4.11) has done
with the generics, but it has me me confused. I am even more
surprised that only the Java compiler complains and not the Kotlin
compiler. In IntelliJ this is not flagged up as an issue either.
It only occurs when compiling the project with Gradle.
I know my example is slightly vague, but it removes all of the
noise. The actual code of the offending class is here ->
https://gitlab.com/ysb33rOrg/java-nio2-providers/blob/development/commons-compress-provider-core/src/test/java/org/ysb33r/nio/provider/commons_core/examples/java/GzFileSystemProvider.java
Now I'm hoping if anyone has seen issues like this before or have
an idea where I can start diagnosing it.
--
Schalk W. Cronjé
Twitter / Ello / Toeter : @ysb33r