問題:
maven項目在pom.xml配置tomcat插件後啓動,運行時報內存溢出。
tomcat插件配置如下:
<code class="hljs xml has-numbering"><span class="hljs-tag"><<span class="hljs-title">plugin</span>></span> <span class="hljs-tag"><<span class="hljs-title">groupId</span>></span>org.apache.tomcat.maven<span class="hljs-tag"></<span class="hljs-title">groupId</span>></span> <span class="hljs-tag"><<span class="hljs-title">artifactId</span>></span>tomcat7-maven-plugin<span class="hljs-tag"></<span class="hljs-title">artifactId</span>></span> <span class="hljs-tag"><<span class="hljs-title">version</span>></span>${tomcat.version}<span class="hljs-tag"></<span class="hljs-title">version</span>></span> <span class="hljs-tag"><<span class="hljs-title">configuration</span>></span> <span class="hljs-tag"><<span class="hljs-title">port</span>></span>${webserver.port}<span class="hljs-tag"></<span class="hljs-title">port</span>></span> <span class="hljs-tag"><<span class="hljs-title">path</span>></span>/${project.artifactId}<span class="hljs-tag"></<span class="hljs-title">path</span>></span> <span class="hljs-tag"><<span class="hljs-title">uriEncoding</span>></span>${project.build.sourceEncoding}<span class="hljs-tag"></<span class="hljs-title">uriEncoding</span>></span> <span class="hljs-tag"></<span class="hljs-title">configuration</span>></span> <span class="hljs-tag"></<span class="hljs-title">plugin</span>></span></code>
錯誤如下:
Java.lang.OutOfMemoryError:PermGen space
原因:
java虛擬機裝載類的空間不夠,永久內存超出,主要是因爲項目功能增加後,加載的jar或class過多造成的。
解決方案:
增加jvm內存,在maven的run configuration中增加如下配置,擴大初始化內存。
-Xms1024M -Xmx2048M -XX:PermSize=256M -XX:MaxNewSize=256M -XX:MaxPermSize=512M
通過jvisualvm.exe我們可以看到初始化的內存
文章來源:http://blog.csdn.net/shiyong1949/article/details/52536689
根據需要可以調整初始化內存的大小。