Jeffrey Blattman wrote:
we had the same problem. however, my conclusion was that using Ivy was
not the root cause but rather the straw that broke the camel's back. the
research i did showed the using the "ant" and "antcall" targets are
memory hungry and are at the root cause. i assume when you say "iterate
over a series of subprojects" you are using the "ant" task.
you can work around this by setting the MaxPermSize to some larger
value. you can set this in your environment by doing:
$ export ANT_OPTS="$ANT_OPTS -Xmx... -XX:MaxPermSize=..."
where ... are some values you'll need to play with.
We've discussed this -its a mixture of Ant and Ivy failing to work together
my problems: http://jira.smartfrog.org/jira/browse/SFOS-167
as raised with Ant http://issues.apache.org/bugzilla/show_bug.cgi?id=42742
Perm gen space is where task defs are being stored, for some reason they
are not being released when a sub build finishes. We modified our
<typdef> calls of ivy to be skipped if ivy was already defined (using
the <typefound> condition); this stopped the memory leaks.
One thing nobody is sure of is whether this is an Ant bug or a Java
problem. If we could identify it as being ant-related, and put together
a patch, I'd commit it.
--
Steve Loughran http://www.1060.org/blogxter/publish/5
Author: Ant in Action http://antbook.org/