如何增加JVM的堆大小

可能重复:
我如何增加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) 

以下是可用于更改堆大小的几个选项。

 -Xms<size> set initial Java heap size -Xmx<size> set maximum Java heap size -Xss<size> set java thread stack size 

 java -Xmx256m TestData.java 

用-Xms = [size] -Xmx -XX启动程序:MaxPermSize = [size] -XX:MaxNewSize = [size]

例如 –

 -Xms512m -Xmx1152m -XX:MaxPermSize=256m -XX:MaxNewSize=256m 

Java命令行参数

 -Xms: initial heap size -Xmx: Maximum heap size 

如果你正在使用Tomcat。 更新CATALINA_OPTS环境variables

 export CATALINA_OPTS=-Xms16m -Xmx256m; 

在调用java时使用-Xmx命令行参数。

请参阅http://download.oracle.com/javase/6/docs/technotes/tools/windows/java.html

使用-Xms1024m -Xmx1024m来控制堆大小(1024m仅用于演示,确切数量取决于您的系统内存)。 将最小和最大堆大小设置为相同通常是最佳实践,因为JVM不必在运行时增加堆大小。

-XmxSIZE

例如:-Xmx1024M