maven tomcat7:run 内存溢出处理

问题:
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







根据需要可以调整初始化内存的大小。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章