jdk1.6.21在eclipse 3.6下存在冲突的问题,但说的不是很详细,有人问到,那我就再说一下吧。这是这个官方就有说明的,在下载页面很明显的标出了,只是有的同学不是在官方下载的或者太粗心没注意到。我们看官方是怎么说的。
The Eclipse 3.3 - 3.6 launchers for Windows had a problem with the Oracle/Sun Java VM version '1.6.0_21-b06'.
UPDATE: Oracle/Sun have released a respin of their JDK/JRE to fix this, so the recommended resolution of this problem is to download and re-install version 1.6.0_21-b07' or higher from http://www.java.com (alternative link is http://java.sun.com/javase/downloads/index.jsp). Make sure you have b07 or higher by running java -version.
Before the fix was released, there were three choices to work around this:
- switch back to '1.6.0_20' (as of July 19, 2010 it can still be downloaded here)
- Change the commandline for launching or add the following line after "-vmargs" to your Eclipse.ini file:
-XX:MaxPermSize=256m
(Detailed instructions/examples)
- For 32-bit Helios, download the fixed eclipse_1308.dll and place it into
(eclipse_home)/plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503
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 voting and comments at bug 319514.
已经说得很明白了,由于1.6.0_21-b06中部分包的名字被Oracle公司修改了,会造成原先的插件内存泄露,故官方也给出了三种解决方案。
(1)把JDK的版本降级到 jdk 1.6.0_20。下载地址:here
(2)修改Eclipse.ini文件里的设置,在-vmargs后添加或修改下面这句-XX:MaxPermSize=256m。
(3)对于32位版本的Eclipse3.6,可以下载这个补丁。eclipse_1308.dll,并且放置到(eclipse_home)/plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.0.v20100503。
(4)升级jdk1.6.0_21-b06到1.6.0_21-b07或更高。