1

你能解释一下如何增加这个 PermSpace 的大小。我正在使用 Gate 应用程序并加载大量数据和大量插件,不幸的是,每次运行后它都会给出关于内存不足 maxPermSpace 的错误。

我到处搜索,但我找不到如何通过命令行增加这个大小,或者可能是我可以更新数据的文件?

我真的需要一些帮助才能完成我的项目。请解释如何通过命令行执行此操作我使用的是 jdk1.6.0_38 版本和 win7(64 位)。

4

3 回答 3

1

你必须使用-XX:MaxPermSize. 示例命令可以是:

java -Xms128m -Xmx512m -XX:MaxPermSize=512m ...
于 2013-05-16T12:47:26.867 回答
0
-XX:MaxPermSize=256m

可能与对象的 32 位地址相结合,而不是 64 位

-XX:+UseCompressedOops

启用压缩指针(表示为 32 位偏移量而不是 64 位指针的对象引用)以优化 Java 堆大小小于 32gb 的 64 位性能。

请参阅虚拟机选项

还要检查没有发生字符串内部化。过去引入 XML 是String.intern()为了节省空间,但后来 Perm 空间变大了。所以也许检查你的 XML 设置。

于 2013-05-16T12:48:29.483 回答
0

来自 Gate 的文档

2.7.5 报错:Could not reserved enough space for object heap [#]

GATE 不使用 JAVA_OPTS 变量。默认内存分配在 gate/build.xml 文件中定义,但您可以通过在同一目录中创建一个名为 build.properties 的文件来覆盖它们,其中包含
runtime.start.memory=256m
runtime.max.memory=1048m

检查您的 gate/build.xml 文件并包括其他答案中引用的选项

于 2013-05-16T12:50:58.823 回答