关于打开Eclipse时出现eclipse failed to create the java virtual machine与locking is not possible in the direc

原文转自:http://www.cnblogs.com/steararre/p/4037453.html


今天在机子上使用Eclipse时候打开发现这两个问题,通过查阅资料膜拜大神博客得知解决方法,特此整理下来,方便后来遇到此问题的小伙伴们。

一开始打开Eclipse时候出现问题现象1,问题1解决以后就出现了问题2,。


1.问题1现象(eclipse failed to create the java virtual machine


2.问题1解决方法
这是创建Java虚拟机初始化失败,找到Eclipse解压路径以及初始化文件




用ultraEdit打开,出现如下图所示情况时,点击“否”或者“取消”皆可

出现如下图所示,此时将圆圈里的数字都改为显示的1/2就可以了(如,原始值为512则改为256,原始值为256则改为128等),注意,某经验(http://jingyan.baidu.com/article/afd8f4de466baf34e286e917.html)某知道(http://zhidao.baidu.com/link?url=dRzVjFMK_2MW1smnuLH4dIKEmV3YlDQHPABoV3VkRDfKt8nE_WmV50yiY3vSDu8gqOiCaKtgRGNFAoqW4UxoYa)所列出的
方法没有说明具体怎么改,不同版本的初始化文件内容不同。

更改后文件为下图所示(红色圆圈中为所做改动之处)

保存以后重新打开Eclipse完美解决“eclipse failed to create the java virtual machine”的问题。

3.问题1解决方法参考资料
感谢此博客博主(http://blog.csdn.net/yuanfei_1988/article/details/5919168)但是博主只是对前两个进行了当前值改为1/2的变动,但是
我按照此方法没有修复这个问题,所以我就把4个值都改了,这才管用。
以下引自上述博客:

----------------------------------------------------------------------------------------------------------------------------------
“虚拟机为java永久生成对象(Permanate generation)如,class对象、方法对象这些可反射(reflective)对象分配内存限制设置。
说明:PermSize和MaxPermSize指明虚拟机为java永久生成对象(Permanate generation)等这些可反射(reflective)对象分配内存限制,这些内存不包括在Heap(堆内存)区之中。
-Xms128m 
表示JVM Heap(堆内存)最小尺寸128MB,初始分配
-Xmx512m 
表示JVM Heap(堆内存)最大允许的尺寸256MB,按需分配。
-XX:PermSize=64MB 最小尺寸,初始分配
-XX:MaxPermSize=256MB 最大允许分配尺寸,按需分配
过小会导致:java.lang.OutOfMemoryError: PermGen space”

------------------------------------------------------------------------------------------------------------------------------------

4.问题1另一解决方法(貌似抓住了问题的根本)
感谢@wucccsk 与@JustDoNow 在此博客(http://blog.csdn.net/yuanfei_1988/article/details/5919168)评论区给出的另一种解决方法并做出了相应的解释,如下:
个人认为,如果机器已经装了jdk了,在eclipse.ini中增加jvm的完整路径的方法更好一点。如果不设置vm选项,有可能eclipse会使用自带的java虚拟机,这样需要的内存就会超过默认的256m的限制了,是这个原因。。。
找到了另一个解决方案,就是在eclipse.ini中增加jvm的完整路径:
-vm
D:\Java\jdk1.6.0_29\bin\javaw.exe
----------
注意这个参数的放置位置,我放在文件最下面时还是不行,放在-vmargs参数上面就可以了。

PS:此方法我木有尝试,如上述方法不能解决或出现问题时可选择此方法解决。

-------------------------------------------------------------------------------------------------------------------------------------

可是就在我兴高采烈地准备打开心爱的Eclipse开始我苦逼的学习时刻时候,我发现,另一个问题接踵而来,妈蛋 = =


5.问题2现象(locking is not possible in the directory
其具体现象如下图所示:


6.问题2解决方法
依然按照问题1解决方法找到并打开 Eclipse directory中的eclipse.ini
在文件最后加入加入这句话:“-Dosgi.configuration.area=@user.home/.eclipse”(注意添加为引号内的)
如下图所示:


上图中圆圈内为新加入内容。
最后保存, 重新打开eclipse完美修复!

7.问题2参考资料
(1)某经验:http://jingyan.baidu.com/article/a17d52853a90998099c8f249.html
(2)某贴吧:http://tieba.baidu.com/p/3032965697(6楼)
Inside the Eclipse directory you can find a eclipse.ini file. There you can put the vm arguments, although the one suggested by Eclipse won't work.
My environment started working with this one:
-Dosgi.configuration.area=@user.home/.eclipse
This way, each user inside the environment that run the Eclipse program, will create a different .eclipse directory inside the particular home, with full rights and zero problems.

啊!终于可以顺利的学习了!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值