java.lang.OutOfMemoryError:嵌入式jetty中的PermGen空间
我试图在jetty服务器中部署多个应用程序。目前,我有50份申请,我正在按照这个答案java.lang.OutOfMemoryError:嵌入式jetty中的PermGen空间,java,eclipse,jetty,Java,Eclipse,Jetty,我试图在jetty服务器中部署多个应用程序。目前,我有50份申请,我正在按照这个答案 我在第38次部署时得到了java.lang.OutOfMemoryError:PermGen space。如何解决此问题?增加jetty实例的perm和堆大小 通过命令行运行时: java -jar -XX:MaxPermSize=512m jety.jar 如果这不起作用,请增加大小(例如1024m)增加jetty实例的perm和heap大小 通过命令行运行时: java -jar -XX:MaxP
我在第38次部署时得到了
java.lang.OutOfMemoryError:PermGen space
。如何解决此问题?增加jetty实例的perm和堆大小
通过命令行运行时:
java -jar -XX:MaxPermSize=512m jety.jar
如果这不起作用,请增加大小(例如1024m)增加jetty实例的perm和heap大小 通过命令行运行时:
java -jar -XX:MaxPermSize=512m jety.jar
如果这不起作用,则增加大小(例如1024m)部署将生成一组
类
对象,这些对象分配在永久空间中,从未真正进行垃圾收集
要解决这个问题,您可能需要使用JVM选项增加永久空间的大小-XX:MaxPermSize=128m
(有关更多JVM选项/描述,请参阅)
请注意,从Java8开始,perm空间已被修改。因此,作为替代方案,您也可以将JDK升级到Java8。部署会生成一堆
Class
对象,这些对象分配在永久空间中,从未真正进行垃圾收集
要解决这个问题,您可能需要使用JVM选项增加永久空间的大小-XX:MaxPermSize=128m
(有关更多JVM选项/描述,请参阅)
请注意,从Java8开始,perm空间已被修改。因此,您也可以将JDK升级到Java8。任何内存控制选项都是为嵌入式Jetty应用程序启动的JVM的一部分。这意味着,为了增加JVM使用的PermGen,在启动嵌入式Jetty实例时,需要对JVM使用命令行选项
-XX:MaxPermSize
例如:
$ java -XX:MaxPermSize=1024m -cp myserver.jar com.company.EmbeddedMe
既然您添加了标签,我假设您想知道如何为相同的东西配置“运行配置”
在运行>运行配置>参数选项卡>虚拟机参数中,放置
-XX:MaxPermSize=1024m
任何内存控制选项都是为嵌入式Jetty应用程序启动的JVM的一部分。这意味着,为了增加JVM使用的PermGen,在启动嵌入式Jetty实例时,需要对JVM使用命令行选项-XX:MaxPermSize
例如:
$ java -XX:MaxPermSize=1024m -cp myserver.jar com.company.EmbeddedMe
既然您添加了标签,我假设您想知道如何为相同的东西配置“运行配置”
在运行>运行配置>参数选项卡>虚拟机参数中,放入
-XX:MaxPermSize=1024m
增加perm大小而不是堆大小How?我试过这一切的结果。我不知道如何解决这个问题。我在哪里可以增加它?密码?还是在JAVA属性或Jetty发行版中?每个人都只是简单地建议增加永久性,但如何增加?这应该会有帮助我想知道,我在哪里可以输入这个-XX:MaxPermSize=128min增加烫发大小而不是堆大小How?我试过这一切的结果。我不知道如何解决这个问题。我在哪里可以增加它?密码?还是在JAVA属性或Jetty发行版中?每个人都只是简单地建议增加永久性,但如何增加?这应该会有帮助我想知道,我在哪里可以输入这个-XX:MaxPermSize=128mI我正在使用嵌入式jetty服务器。它看起来像独立服务器。如何运行它?通过maven?不使用我在上面的问题中给出的链接,那么您需要增加整个应用程序的大小。如何运行应用程序?通过罐子?通过命令行?通过eclipse?我正在使用嵌入式jetty服务器。它看起来像独立服务器。如何运行它?通过maven?不使用我在上面的问题中给出的链接,那么您需要增加整个应用程序的大小。如何运行应用程序?通过罐子?通过命令行?通过eclipse?Hendrik,我没有重新部署,我有50个war文件。我正试着把它放在jetty服务器上。在部署自身时,获取此错误。我无法在第38次war后部署文件。任务管理器中的javaw进程达到205MB,它遇到了此问题。因此,请使用-XX:MaxPermSize选项启动eclipse,或者将其添加到eclipse中嵌入式jetty服务器的运行配置的VM参数中。在运行配置中,我转到(x)=参数选项卡并写入-XX:MaxPermSize=1024m仍然没有更改。变量名错了吗?-XX。。。不是程序参数,而是VM参数。也许对你有帮助。亨德里克,我没有重新部署,我有50份战争档案。我正试着把它放在jetty服务器上。在部署自身时,获取此错误。我无法在第38次war后部署文件。任务管理器中的javaw进程达到205MB,它遇到了此问题。因此,请使用-XX:MaxPermSize选项启动eclipse,或者将其添加到eclipse中嵌入式jetty服务器的运行配置的VM参数中。在运行配置中,我转到(x)=参数选项卡并写入-XX:MaxPermSize=1024m仍然没有更改。变量名错了吗?-XX。。。不是程序参数,而是VM参数。也许对你有帮助。哇。。这很有效。我必须先设置大小,然后调用jar。非常感谢。再加上一个跑步配置infoWow。。这很有效。我必须先设置大小,然后调用jar。非常感谢。另外一个是运行配置信息