【发布时间】:2014-07-09 01:37:52
【问题描述】:
我在尝试使用如下所示的插件运行 Java 程序时收到错误消息:
Caused by: java.lang.UnsupportedClassVersionError: REALDrummer/myCoreLibrary : Unsupported major.minor version 52.0
at java.lang.ClassLoader.defineClass1(Native Method) ~[?:1.7.0_55]
at java.lang.ClassLoader.defineClass(ClassLoader.java:800) ~[?:1.7.0_55]
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142) ~[?:1.7.0_55]
at java.net.URLClassLoader.defineClass(URLClassLoader.java:449) ~[?:1.7.0_55]
at java.net.URLClassLoader.access$100(URLClassLoader.java:71) ~[?:1.7.0_55]
at java.net.URLClassLoader$1.run(URLClassLoader.java:361) ~[?:1.7.0_55]
at java.net.URLClassLoader$1.run(URLClassLoader.java:355) ~[?:1.7.0_55]
at java.security.AccessController.doPrivileged(Native Method) ~[?:1.7.0_55]
at java.net.URLClassLoader.findClass(URLClassLoader.java:354) ~[?:1.7.0_55]
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:77) ~[spigot.jar:git-Spigot-1496]
at org.bukkit.plugin.java.PluginClassLoader.findClass(PluginClassLoader.java:62) ~[spigot.jar:git-Spigot-1496]
at java.lang.ClassLoader.loadClass(ClassLoader.java:425) ~[?:1.7.0_55]
at java.lang.ClassLoader.loadClass(ClassLoader.java:358) ~[?:1.7.0_55]
at java.lang.Class.forName0(Native Method) ~[?:1.7.0_55]
at java.lang.Class.forName(Class.java:270) ~[?:1.7.0_55]
at org.bukkit.plugin.java.PluginClassLoader.<init>(PluginClassLoader.java:40) ~[spigot.jar:git-Spigot-1496]
at org.bukkit.plugin.java.JavaPluginLoader.loadPlugin(JavaPluginLoader.java:127) ~[spigot.jar:git-Spigot-1496]
... 6 more
根据我从其他帖子中了解到的情况,这意味着我正在使用 Java 8 编译我的插件,同时在带有 Java 7 的 JVM 上运行它。我知道我正在运行 Java 7 JVM;实际上,我这样做是为了确保它与 Java 7 兼容以供其他人使用。
问题是我似乎无法让 Eclipse 停止在 Java 8 中编译并使用 Java 7。 我已在“ Installed JREs”首选项,我注意到 Java 7 JRE 是其标准库现在出现在项目中的那个。 Java 7 JRE 也是出现在 Java 构建路径的“库”选项卡中的那个。
尽管如此,我仍然收到此错误。是否需要更改其他设置以使 Eclipse 在 Java 7 而不是 Java 8 中编译?我的代码中没有任何 Java 8 元素。
【问题讨论】:
标签: java eclipse java-7 java-8