Eclipse - 所有的环境中JDK版本都是1.8,但某个程序启动时是1.7?

今天遇到个很奇怪的问题,公司开发了个eclipse plugin ide,但是启动时,总显示一下错误:

Error: Could not create the Java Virtual Machine.
Error: A fatal exception has occurred. Program will exit.
Unrecognized VM option 'MetaspaceSize=128M'
java.lang.UnsupportedClassVersionError: com/delta/cornerstone/runtime/RuntimeEngine : Unsupported major.minor version 52.0
	at java.lang.ClassLoader.defineClass1(Native Method)
	at java.lang.ClassLoader.defineClass(Unknown Source)
	at java.security.SecureClassLoader.defineClass(Unknown Source)
	at java.net.URLClassLoader.defineClass(Unknown Source)
	at java.net.URLClassLoader.access$100(Unknown Source)
	at java.net.URLClassLoader$1.run(Unknown Source)
	at java.net.URLClassLoader$1.run(Unknown Source)
	at java.security.AccessController.doPrivileged(Native Method)
	at java.net.URLClassLoader.findClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
	at java.lang.ClassLoader.loadClass(Unknown Source)
	at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Exception in thread "main"  

这一看就知道是JDK版本不对,'MetaspaceSize=128M' JDK1.8以上版本才有的属性,再加上  Unsupported major.minor version 52.0 指的是用低版本的JDK启动了1.8版本的程序。

虽然找到了问题的原因,但是找不到为什么会出现,因为不论是eclipse配置的JDK,还是环境变量中的JDK全是 1.8, 而且把所有的环境变量仔仔细细的都看了一遍,发现全是1.8。我们也把path中所有可能出现的JAVA路径都看了一遍,只有一个JAVA_HOME。

怎么办呢?因为一定存在一个低版本的JDK,要不然不会出现上面的错误。

然后我就将JDK1.8环境变量删除掉,在看java -version,  奇怪的现象出现了,显示出了JDK1.7的路径(按道理,应该不存在jdk变量了)。而且这时候,path中根本就没有JDK相关的任何路径(不要怀疑,我真的检查过了)。

检查了好久。。。

突然想到,会不会是注册表的原因(因为之间用exe直接安装过JDK1.7)

哈哈,果然,把windows的“程序与功能”打开,会发现有个JAVA程序,卸载掉,OK。

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值