you *may* want to deep dive into the plugins main routine and make sure you System.gc to free the memory also if you're creating anonymous classes or any classes out of the reach of the CL you'll want to System.gc those as well
more specifically.. permgen space handles the classes loaded by CL..to tweak change the MaxPermSize on java startup e.g. -XX:MaxPermSize take a look at the construction of a number of anonymous classes which cannot be gc'd as they were constructed and loaded thru a protected constructor http://blogs.sun.com/fkieviet/entry/classloader_leaks_the_dreaded_java tough to say without some diagnostics from a java profiler or heap analyzer such as jprofiler or jstack here is a command line heap analysis tool from SUN http://java.sun.com/developer/onlineTraining/Programming/JDCBook/perf3.html#profile other suggestions? Martin Gainty ______________________________________________ Verzicht und Vertraulichkeitanmerkung/Note de déni et de confidentialité Diese Nachricht ist vertraulich. Sollten Sie nicht der vorgesehene Empfaenger sein, so bitten wir hoeflich um eine Mitteilung. Jede unbefugte Weiterleitung oder Fertigung einer Kopie ist unzulaessig. Diese Nachricht dient lediglich dem Austausch von Informationen und entfaltet keine rechtliche Bindungswirkung. Aufgrund der leichten Manipulierbarkeit von E-Mails koennen wir keine Haftung fuer den Inhalt uebernehmen. Ce message est confidentiel et peut être privilégié. Si vous n'êtes pas le destinataire prévu, nous te demandons avec bonté que pour satisfaire informez l'expéditeur. N'importe quelle diffusion non autorisée ou la copie de ceci est interdite. Ce message sert à l'information seulement et n'aura pas n'importe quel effet légalement obligatoire. Étant donné que les email peuvent facilement être sujets à la manipulation, nous ne pouvons accepter aucune responsabilité pour le contenu fourni. > Date: Fri, 26 Mar 2010 11:02:41 +1030 > Subject: OutOfMemory PermGen space : Diagnosis is very difficult... > From: [email protected] > To: [email protected] > > Hi All, > > Recently I turned on several plugins only to find Java's annoying > "OutOfMemory PermGen space" error. Since this problem exists at the JVM > level I am finding it very difficult to diagnose the problem and where it > exists in my maven configuration. > > Setting your MAVEN_OPTS environment parameter, so that MAVEN_OPTS="-Xmx1024m > -XX:MaxPermSize=256m" fixes most people's permgen related problems - but it > does not in my case. Personally speaking, 256m of PermGen is HUGE! I have > even run this with a MASSIVE 512m and it still fails. This leads me to > believe that the problem lies elsewhere, and that there *might* be >1 JVM > being used. > > Recommendations have lead me to investigate "forking" the execution of the > compiler. This is also a convoluted and relatively undocumented config which > makes the job that much harder. I'm yet to get a working forking > configuration. Further more there's little doco on Forking other plugins > (like reporting/site plugins). So I'm not actually doing any non-default > forking with any plugins - perhaps I should be? > > Conclusion: > I've no way of determining exactly what, why or which plugin is using up all > my PermGen space. It's also very difficult for me to configure forking (aka > running the plugin in a different JVM to maven) plugins. Especially when I > don't know what plugin is causing the problem to begin with. > > If anyone has any advice for diagnosing this I would very much appreciate > your help. > > --AH > > p.s. > > mvn clean install == success! > mvn clean install site == fail! > > but > > mvn clean install; mvn site == success! _________________________________________________________________ Hotmail is redefining busy with tools for the New Busy. Get more from your inbox. http://www.windowslive.com/campaign/thenewbusy?ocid=PID27925::T:WLMTAGL:ON:WL:en-US:WM_HMP:032010_2
