A recent commit [1] to ClassInfo changed a private field from a Class to a WeakReference<Class> (to address memory leaks). In testing a project with the latest snapshot as a dependency, the compileGroovy task fails [2] because that field is referenced in an internal Gradle class LeakyOnJava7GroovySystemLoader [3].
I haven't reported it yet on the Gradle forums yet, thought I'd post here first since I know there's some Gradle folks on here to see what you thought would be the best way to approach this (i.e., report, revert our change, etc.). [1] https://github.com/apache/groovy/commit/a8fb776023253ebc2da35538f25eccd7d59997ed [2] > Could not shut down the Groovy system for org.gradle.internal.classloader.VisitableURLClassLoader@69048911 .... .... Caused by: java.lang.ClassCastException: java.lang.ref.WeakReference cannot be cast to java.lang.Class at org.gradle.api.internal.classloading.LeakyOnJava7GroovySystemLoader.shutdown(LeakyOnJava7GroovySystemLoader.java:74) [3] https://github.com/gradle/gradle/blob/711f64233b1b3ed312dee00f1215e2609ce41210/subprojects/core/src/main/java/org/gradle/api/internal/classloading/LeakyOnJava7GroovySystemLoader.java#L74