今天一个cownewstudio的使用者通过qq问我他的eclipse安装cownewstudio以后在eclipse中可以看到studio,但是运行的时候提示类加载错误。因为cownewstudio目前的版本只支持jdk5,所以我询问他eclipse使用的是不是1.4的jre,但是他确认它用的就是1.5的。
后来经过实验,我确认还是jre版本的问题,他就把他的eclipse截图发给了我,以证明他用的是jdk1.5,但是我发现他发过来的图片工程编译器配置对话框的。哈哈,我终于明白了,让他把eclipse的配置详细信息(“帮助”=》“关于eclipse”=》“配置详细信息”)发过来,果然:
-vm
c:\programe\jdk1.4.2\jre\bin\javaw.exe
原来他装了多个版本的jdk。我要他把jdk1.5目录下的jre目录拷贝到eclipse安装目录下,然后重启eclipse,一切工作正常了。
其实这是很多刚刚接触eclipse、甚至用了好长时间eclipse的开发人员经常犯的错,也就是把eclipse运行时的jre与工作空间中项目所用的jre版本弄混乱。
eclipse也是一个普通的java程序,因此必须有一个jre做为运行环境。如果你的机器上没有安装任何jre(或者jdk,本文不做二者的区分),那么点击eclipse.exe就会报错说找不到jre。此时可以安装一个jre、或者直接把jre目录拷贝到eclipse安装目录下。
在eclipse的每个项目中可以为项目指定不同的jre版本,比如a项目使用jdk1.4编译,b项目使用jdk1.5编译。这个jdk版本是和eclipse运行jre没有直接关系的。
项目的jdk版本是很容易修改的,那么任何指定eclipse启动所用的jre呢?
eclipse启动的时候找jre的顺序是:如果eclipse.ini中配置了-vm参数,那么则使用这个参数指定的jre;否则就去查看eclipse安装目录下是否有jre文件夹,如果有的话就使用这个jre;否则的话就去系统中查找安装的jre,如果还找不到的话就报错。
所以如果不想卸载掉其他的jdk的话,可以有两种方式:(1)直接把要使用的jre文件夹拷贝到eclipse目录下,这是懒人常用的方法(2)修改eclipse.ini文件,添加-vm参数,指定要运行的虚拟机的地址,使用 -vm 命令行自变量例子:-vm c:\jre\bin\javaw.exe
闽公网安备 35060202000074号