可能重复:
如何增加JVM内存?
我收到以下错误:
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at SQLite.Vm.step(Native Method)
at SQLite.Database.get_table(Database.java:314)
at SQLite.JDBC2z.JDBCStatement.executeQuery(JDBCStatement.java:120)
at SQLite.JDBC2z.JDBCStatement.executeQuery(JDBCStatement.java:168)
at TestData.readData(TestData.java:21)
at TestData.main(TestData.java:41)
Run Code Online (Sandbox Code Playgroud) 我正在尝试设置我正在处理的服务器的JVM,因此它会在发生OOME时将堆转储到文件中.
我知道我必须在-XX:-HeapDumpOnOutOfMemoryError某处向JVM参数添加此选项,但我无法知道如何执行此操作.
仅供参考,我可以通过PuTTY访问服务器,所以我正在寻找一种命令行方式.
我使用的JVM是OpenJDK64-Bit Server VM.
我不知道这是否相关,但应用程序是一个war文件.
PS : ps -ef|grep java
tomcat 23837 1 0 Mar25 ? 00:03:46 /usr/lib/jvm/jre/bin/java -classpath :/usr/share/tomcat6/bin/bootstrap.jar:/usr/share/tomcat6/bin/tomcat-juli.jar:/usr/share/java/commons-daemon.jar -Dcatalina.base=/usr/share/tomcat6 -Dcatalina.home=/usr/share/tomcat6 -Djava.endorsed.dirs= -Djava.io.tmpdir=/var/cache/tomcat6/temp -Djava.util.logging.config.file=/usr/share/tomcat6/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager org.apache.catalina.startup.Bootstrap start
Run Code Online (Sandbox Code Playgroud)
编辑:
我找到了一些东西,如果我错了就纠正我:因为我使用的是Tomcat,所以我决定在tomcat.conf文件中添加这些行:
JAVA_OPTS = -XX:-HeapDumpOnOutOfMemoryError
JAVA_OPTS = -XX:HeapDumpPath = /根/转储
JAVA_OPTS = -Xmx20m
你怎么看 ?