I have a Java 7 project that runs scripts every n minutes by n processes. Here is an example of the code that runs the scripts.
ScheduledFuture scheduledFutu
We've had similar issues with a file parser written in groovy, memory leaks like a seave - when you do a lot of String manipulation. We also tried the clearCache() on the classloader and also .removeMetaClass() with no use.
We finally got around this problem by compiling the groovy module as a jar file and including it in the project.