我正在尝试更改服务器JVM上的垃圾收集器以对抗java.lang.OutOfMemoryError: GC overhead limit exceeded
异常,这是我在此处发现的其他一些问题。虽然我对这些命令行选项的使用感到困惑。这就是我正在做的事情:
java -XX:+UseConcMarkSweepGC
但是我收到了usage
消息,并没有任何迹象表明它已经发生了变化。
这是我看到的输出:
用法:java [-options] class [args ...] (执行课程) 或java [-options] -jar jarfile [args ...] (执行jar文件) 选项包括:........
这是否正确使用了命令行参数?我犯了一个愚蠢的错误吗? (它发生了很多)
答案 0 :(得分:2)
在运行java
命令时,您创建的JVM使用这样的命令行标志,它们不是“全局”开关。
要使用该标志,请将其包含在正常执行的VM参数中。
另外,请注意,启用ConcMarkSweepGC
并不能真正帮助您,因为它可以使其更加主动地进行垃圾回收。你要么:
-Xmx
to increase the max heap size。