Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从Eclipse启动带有门户的JBoss时出现内存不足错误_Eclipse_Jboss_Portal - Fatal编程技术网

从Eclipse启动带有门户的JBoss时出现内存不足错误

从Eclipse启动带有门户的JBoss时出现内存不足错误,eclipse,jboss,portal,Eclipse,Jboss,Portal,我无法让JBoss门户从Eclipse启动,尽管AS单独启动很好,而且门户从命令行启动时也可以正确启动,而不是从Eclipse内部启动。我运行的是3GB的Windows。建议?谢谢。您需要增加分配给Java的内存,特别是堆空间和PermGen。这是非常相关的。它提到Eclipse和JBoss经常出现这个问题(因为两者都相当大),并提供了一个解决方案(调整命令行标志)。存在不同类型的OutOfMemory错误: java.lang.OutOfMemoryError:java堆空间 增加-Xms和-

我无法让JBoss门户从Eclipse启动,尽管AS单独启动很好,而且门户从命令行启动时也可以正确启动,而不是从Eclipse内部启动。我运行的是3GB的Windows。建议?谢谢。

您需要增加分配给Java的内存,特别是堆空间和PermGen。这是非常相关的。它提到Eclipse和JBoss经常出现这个问题(因为两者都相当大),并提供了一个解决方案(调整命令行标志)。

存在不同类型的OutOfMemory错误:

java.lang.OutOfMemoryError:java堆空间

增加-Xms和-Xmx。我会确保将它们设置为至少256m,通常最好将它们设置为相同的值

java.lang.OutOfMemoryError:PermGen空间

添加-XX:+cmsPermGensWeapingEnabled或增加PermGen大小:-XX:PermSize=256m

java.lang.OutOfMemoryError:超出GC开销限制

添加更多堆,垃圾收集器无法在每个周期释放足够的内存。还可以尝试打开GC日志记录

java.lang.OutOfMemoryError:无法创建新的本机线程

减少堆:)这意味着分配给堆的内存太多,操作系统没有足够的内存来创建线程


最后两件事,可以在jboss/bin/run.conf中配置上述内容


另外,在启动JBoss时,如果看到哪些-X参数被传递到JVM,它会默认打印这些信息,并验证它是否是您期望的信息。

您在eclipse中运行门户时使用的是什么?也许Jboss工具可以帮助您

  • 根据我的实验,eclipse.ini中设置的所有vmargs选项只在创建新工作区时播放一次。如果要更改现有工作区中的选项,请使用中的运行/调试配置。ini中的vmargs将不再被读取

  • 请注意,应该设置-XX:MaxPermSize=…M,而不是-XX:PermSize=…,最后设置的是最小值,即开始的PermSize

  • 杰里米广告。将mins和maxs设置为相同的值是毫无意义的。你剥夺了Eclipse的适应性-Xms和-Xmx(heap)以及PermGen和MaxPermGen应该不同。(默认情况下,MaxPermGen=256)


  • 我花了几个小时才发现这一点,几乎放弃了,开始在Eclipse之外使用JBoss

    为了在从Eclipse启动时增加JBoss vmargs,您必须更改JBoss启动配置。如果更改standalone.conf,则不会发生任何事情,因为Eclipse不使用它

    因此,要在Eclipse中更改JBoss vmargs,您必须转到“服务器”选项卡,右键单击JBoss实例,然后选择“打开”。

    它将显示一个新窗口。在第一部分中,您有一个选项:“打开启动配置”。单击此处,您将看到用于更改vmargs的文本框。


    希望这对你有帮助

    这个解释很模糊。没有给出如何解决特定问题的方向。请参阅下面的@user2004087回复。先生,您应该获得一枚奖牌!谢谢亚历克斯!我只是把一些知识回馈给社区。然而,我仍然欠社区一大笔钱。