我遇到了同样的问题,但是在我的MacBookPro上。我首先安装了Eclipse Photon,启动时提示我安装Java 6,我从
https://support.apple.com/kb/DL1572?locale=en_US安装了Java 6。
然后我也安装了最新的JRE(截至昨天为止的jre-8u171-macosx-x64)。当再次运行Eclipse时,我开始收到这个错误。然后我尝试从命令行运行,并收到了这个错误:
Exception in thread "main" java.lang.UnsupportedClassVersionError: org/eclipse/equinox/launcher/Main : Unsupported major.minor version 51.0
当搜索此问题时,答案显示原因是Oracle安装程序未更新/usr/bin中的符号链接。这一点似乎得到了证实,因为运行java -version命令返回了以下结果:
java -version
java version "1.6.0_65"
我发现的解决方案在MacOS El Capitan版本及更高版本中并不可行,而我使用的是High Sierra版本,因此我按照这篇文章中的说明进行了修复,它奏效了,现在我得到了以下结果:
java -version
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
在所有这些操作之后,然而,我在对话框中仍然遇到了与最初报告的相同的“找不到主类”错误,并且在CLI上也出现了与系统仍在Java 6上时相同的“UnsupportedClassVersionError”,所以现在我仍然被卡住了,毫无头绪。
编辑:问题已解决!!
我一直认为问题是Java版本,它还在某种程度上使用Java 6(由于初始提示安装了该版本)。
因此,我按照
这里的说明删除了我为所谓的Java 6问题安装的内容。然后我在Eclipse论坛上找到了
这篇帖子,其中在结尾处(Eric Rizzo于2017年2月14日21:56添加了评论)指出这不是Eclipse消息,而是操作系统消息,并且不应该这样做,因为苹果公司混乱了那个补丁。然后它解释说应该安装Java 8 JDK(而不仅仅是像我所做的那样安装JRE)。一旦我删除了Java 6并安装了完整的Java 8 JDK,它就可以正常运行 :)
/usr/bin/java
。如果这不正确,那么我应该在哪里找到我安装的Java? - Victor Eijkhout