0

我正在尝试使用命令“java -Xmx1028m”

它只是在我按 Enter 后给我可用命令的列表,它不会改变 java 的最大内存大小。请帮忙!

4

3 回答 3

4

一般而言,这并不是更改 Java 的最大堆大小——而是要为command的调用java设置它。

所以你通常会运行:

java -Xmx1028M com.foo.SomeApplication

(或可执行的 jar 文件,可能添加额外的选项等)。

我不知道有任何方法可以更改 Java 的默认最大堆大小 - 但这样做会假定所有应用程序无论如何都有相同的要求。

于 2012-06-04T19:15:59.890 回答
0

-Xmx 本身不是一个“命令”,您可以只给 java 并永久生效。您需要将其添加到您希望拥有更大堆的文件的执行中。

java -jar myApp.jar -Xmx1024m
于 2012-06-04T19:16:38.450 回答
0

java命令的用法是(调用错误的总是先显示):

localhost:~ arne$ java 
Usage: java [-options] class [args...]
           (to execute a class)
   or  java [-options] -jar jarfile [args...]
           (to execute a jar file)

如果没有类参数而不是 -jar 选项,它就无法工作。尝试java -Xmx1028m Test.class并接受该选项,但ClassNotFoundException被抛出。

你怎么知道“它不会改变最大内存大小”?我敢肯定,如果您通过正确的课程或罐子,它会的。

于 2012-06-04T19:23:08.027 回答