我用javaw运行jar程序,JVM内存不足,怎么改设置提高内存?

我用javaw运行jar程序,JVM内存不足,怎么改设置提高内存?,第1张

1.打开注册表(开始->运行或WIN+R,输入regedit,确定);2.找到HKEY_CLASSES_ROOT\Applications\javaw.exe,一开始没有的话,就在资源管理器中找到javaw.exe文件,如我的电脑中为D:\ProgramFiles\Java\jre\bin\javaw.exe,运行下,或找个Jar文件,选择打开方式,输入D:\ProgramFiles\Java\jre\bin\javaw.exe,再选择打开就行了;3.进入HKEY_CLASSES_ROOT\Applications\javaw.exe\shell\open\command,修改默认的键值为"D:\ProgramFiles\Java\jre\bin\javaw.exe"-jar"%1"。java环境安装在其它地方也类似。

设置JVM内存参数有四个:

-Xmx   Java Heap最大值,默认值为物理内存的1/4,最佳设值应该视物理内存大小及计算机内其他内存开销而定;

-Xms   Java Heap初始值,Server端JVM最好将-Xms和-Xmx设为相同值,开发测试机JVM可以保留默认值;

-Xmn   Java Heap Young区大小,不熟悉最好保留默认值;

-Xss   每个线程的Stack大小,不熟悉最好保留默认值;

2. 如何设置JVM内存分配:

(1)当在命令提示符下启动并使用JVM时(只对当前运行的类Test生效):

java -Xmx128m -Xms64m -Xmn32m -Xss16m Test

(2)当在集成开发环境下(如eclipse)启动并使用JVM时:

a. 在eclipse根目录下打开eclipse.ini,默认内容为(这里设置的是运行当前开发工具的JVM内存分配):

-vmargs  

-Xms40m  

-Xmx256m

-vmargs表示以下为虚拟机设置参数,可修改其中的参数值,也可添加-Xmn,-Xss,另外,eclipse.ini内还可以设置非堆内存,如:-XX:PermSize=56m,-XX:MaxPermSize=128m。

此处设置的参数值可以通过以下配置在开发工具的状态栏显示:

在eclipse根目录下创建文件options,文件内容为:org.eclipse.ui/perf/showHeapStatus=true

修改eclipse根目录下的eclipse.ini文件,在开头处添加如下内容:

-debug  

options  

-vm  

javaw.exe

重新启动eclipse,就可以看到下方状态条多了JVM信息。

设置Java虚拟机JVM启动内存参数方法如下:

Tomcat修改TOMCAT_HOME/bin/catalina.bat,在[echo Using CATALINA_BASE: "%CATALINA_BASE%"] 上面加入,比如:

set JAVA_OPTS= -server -Xms1536m -Xmx1536m或者JAVA_OPTS="-server -Xms1536m -Xmx1536m",

服务器模式参数-server不加也可以 ,就变成

set JAVA_OPTS= -Xms1536m -Xmx1536m或者JAVA_OPTS=" -Xms1536m -Xmx1536m",


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/7824797.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-10
下一篇 2023-04-10

发表评论

登录后才能评论

评论列表(0条)

保存