failed to create JVM 解决办法
2013-04-19 14:47
579 查看
“The Java bug was closed for voting and comments at 6969236 on the Java BugParade because the change has been reverted; the related Eclipse bug report is open for oting and comments at bug 319514. ”-引用eclipse官网
在修复版本推出之前它提供了一个解决方法:
打开eclipse目录下的eclipse.ini文件,修改–launcher.XXMaxPermSize属性,其中此属性有两处
-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
将其值改为128m即可,如下。(事实上,只改后面一个就可以,启动eclipse时以后者为准)
-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
128M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
128m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
然后就可以成功启动。
下面有关缓存配置的说明以供以后使用:
-vmargs是表示下面是设置JVM(java虚拟机)的参数,也就是说下面都是java虚拟机的参数,对于JVM来说,内存分为堆内存和非堆内存,注意这里的堆不是c/c++里面的堆的概念,因为jvm自己管理内存,所谓堆上的内存就是jvm可以分配给java应用程序使用的内存,由-Xms和-Xmx这两个参数限定,而非堆内存则是JVM自己使用的,由-XX:PermSize和-XX:MaxPermSize这两个参数来限定。对于堆内存来讲,JVM根据剩余的堆内存的多少调整整个堆内存的大小,调整范围就是-Xms(最小)和-Xmx(最大)指定的范围,-XX:PermSize和-XX:MaxPermSize也是同样的道理,如果你不想JVM来动态调整的话,可以把最大和最小值设置相等,默认最小值是物理内存的1/64,最大值是物理内存的1/4,所以这个最大值就受到物理内存的限制(当然还会收到操作系统的限制)。
经过实验发现,如果-Xms的值比-Xmx设置的大则启动会失败;而如果-Xmx和-XX:MaxPermSize设置的值的和比可用的物理内存还大,启动也会失败,我的第一个设置,两者的和超过了1G,而当时可用内存才700M,所以启动会失败,JVM在启动时会检测参数和实际可用内存
在修复版本推出之前它提供了一个解决方法:
打开eclipse目录下的eclipse.ini文件,修改–launcher.XXMaxPermSize属性,其中此属性有两处
-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
256M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
将其值改为128m即可,如下。(事实上,只改后面一个就可以,启动eclipse时以后者为准)
-startup
plugins/org.eclipse.equinox.launcher_1.1.0.v20100507.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.1.R36x_v20100810
-product
org.eclipse.epp.package.jee.product
--launcher.defaultAction
openFile
--launcher.XXMaxPermSize
128M
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
128m
--launcher.defaultAction
openFile
-vmargs
-Dosgi.requiredJavaVersion=1.5
-Xms40m
-Xmx512m
然后就可以成功启动。
下面有关缓存配置的说明以供以后使用:
-vmargs是表示下面是设置JVM(java虚拟机)的参数,也就是说下面都是java虚拟机的参数,对于JVM来说,内存分为堆内存和非堆内存,注意这里的堆不是c/c++里面的堆的概念,因为jvm自己管理内存,所谓堆上的内存就是jvm可以分配给java应用程序使用的内存,由-Xms和-Xmx这两个参数限定,而非堆内存则是JVM自己使用的,由-XX:PermSize和-XX:MaxPermSize这两个参数来限定。对于堆内存来讲,JVM根据剩余的堆内存的多少调整整个堆内存的大小,调整范围就是-Xms(最小)和-Xmx(最大)指定的范围,-XX:PermSize和-XX:MaxPermSize也是同样的道理,如果你不想JVM来动态调整的话,可以把最大和最小值设置相等,默认最小值是物理内存的1/64,最大值是物理内存的1/4,所以这个最大值就受到物理内存的限制(当然还会收到操作系统的限制)。
经过实验发现,如果-Xms的值比-Xmx设置的大则启动会失败;而如果-Xmx和-XX:MaxPermSize设置的值的和比可用的物理内存还大,启动也会失败,我的第一个设置,两者的和超过了1G,而当时可用内存才700M,所以启动会失败,JVM在启动时会检测参数和实际可用内存
相关文章推荐
- phpStorm打开提示 failed to create JVM 的解决办法
- eclipse启动时提示:failed to create JVM---解决办法
- phpStorm打开提示 failed to create JVM 的解决办法
- 64位IntellJ IDEA启动报“failed to create jvm: error code -1”的解决办法
- phpstorm failed to create jvm:error code -6 解决办法 解决方法
- phpStorm打开提示 failed to create JVM 的解决办法
- phpStorm打开提示 failed to create JVM 的解决办法
- Error launching Android Studio: Failed to create JVM: error code-1解决办法
- 关于Eclipse提示Failed to create the java virtual machine问题解决办法
- Failed to create the java virtual machine完全解决办法
- win7 安装 vmware出错: failed to create the requested registry key key installer error 1021 的解决办法。
- ubuntu failed to create the SD card解决办法
- eclipse启动时 failed to create the java virtual machine 解决办法
- 打开Eclipse时出现"Failed to create the Java Virtual Machine"解决办法
- ubuntu failed to create the SD card解决办法
- eclipse 某个类显示 Failed to create the part's controls 解决办法
- 运行 Visual Studio.NET 提示“Failed to create .NET Frameworks ...”解决办法
- Android Studio 报错 Failed to create jvm:error code -4 的解决方法
- 启动Myeclipse报错“Failed to create the Java Virtual Machine”的解决办法
- Flash Builder 4.6 提示 Failed to create the Java Virtual Machine 解决办法