Hi Saravanan, Sorry for the late reply... I am too busy recently...
Yep, `StampedCommonCache` is not reentrant. You could try to replace `StampedCommonCache ` with `org.codehaus.groovy.runtime.memoize.UnlimitedConcurrentCache`, and build Groovy via `gradlew clean installGroovy --no-build-cache` to get the binary distribution. If it works, PR is welcomed. Good luck ;-) Cheers, Daniel Sun On 2020/08/17 10:02:12, Saravanan Palanichamy <chava...@gmail.com> wrote: > Digging into this further, It looks like StampedCommonCache is not > reentrant. But in my case, I am calling loadClass from inside another > loadClass. Is this the problem? What is the recommendation to compile a set > of classes together that have dependencies between each other? > > In the attachment, notice how loadClass is called within loadClass. This is > because one of my import statements in the first class requires a second > class load > > regards > Saravanan > > On Mon, Aug 17, 2020 at 11:33 AM Saravanan Palanichamy <chava...@gmail.com> > wrote: > > > While debugging this, I noticed this. Intellij tells me that the source > > file and class file dont match. The debugging also has a weird jump from > > GroovyClassLoader::doParseClass() line number 366 to > > StampedCommonCache::isEmpty. I am using JAVA 11 and Groovy 3.0.5 > > >