jab*_*ett 2 maven-2 glassfish permgen glassfish-3
我正在使用嵌入式Glassfish的Maven插件 - 这是我的插件声明:
<plugin>
<artifactId>maven-glassfish-plugin</artifactId>
<packaging>maven-plugin</packaging>
<version>1.0-alpha-4</version>
<configuration>
<httpPort>8080</httpPort>
</configuration>
</plugin>
Run Code Online (Sandbox Code Playgroud)
通过我的数据密集型Web应用程序几次点击后,我的PermGen空间用完了.
java.lang.OutOfMemoryError:PermGen空间
我已经配置了MAVEN_OPTS以使用更多内存:
set MAVEN_OPTS=-Xmx1024m
Run Code Online (Sandbox Code Playgroud)
但看起来产生的Java进程mvn glassfish:run在占用之前只能获得大约半GB的内存.
Glassfish插件是否具有任何用于增加其内存的配置设置?
谢谢!
Pas*_*ent 10
只是为了澄清.永久生成空间包含加载的类对象和实习字符串.它在Java堆之外分配,如下所示:

在最近的太阳虚拟机,默认最大大小为64m(即-XX:MaxPermSize=64m),并足以满足大多数应用程序(这个问题很可能与频繁的取消部署/重新部署在这里虽然).无论如何我会尝试-XX:MaxPermSize=128m或者-XX:MaxPermSize=256m,1024m似乎真的超大!
在与一些同事进一步协商之后,我似乎在Maven中增加了错误的记忆价值.
为了增加PermGen空间,我将其添加到我的MAVEN_OPTS:
set MAVEN_OPTS=-Xmx1024m -XX:MaxPermSize=1024m
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2425 次 |
| 最近记录: |