当前位置: 首页 > 知识库问答 >
问题:

java.lang.不支持major.minor版本51.0

卢枫涟
2023-03-14

我已经下载了程序:

wget https://github.com/crawljax/crawljax/releases/download/crawljax-3.6/crawljax-cli-3.6.zip

解压缩它:

unzip crawljax-cli-3.6.zip

进入文件夹并运行:

java -jar crawljax-cli-3.6.jar

这是我得到的错误:

java -jar crawljax-cli-3.6.jar
Exception in thread "main" java.lang.UnsupportedClassVersionError: com/crawljax/cli/JarRunner : Unsupported major.minor version 51.0
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:643)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:323)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:268)
Could not find the main class: com.crawljax.cli.JarRunner. Program will exit.

我这样做过:

apt-get install default-jre
apt-get install default-jdk

但是同样的错误

我的java版本:

javac -version

javac1.6。0_35

java -version

Java版本"1.6.0_35"OpenJDK运行时环境(IcedTea6 1.13.7) (6b35-1.13.7-1~Deb7u1)OpenJDK 64位服务器VM(build 23.25-b01,混合模式)

我读到这篇文章是因为我编译的版本比JVM上执行的版本要高,但是我这里没有要重新编译的源代码,我只有这个版本。罐子

共有3个答案

钱照
2023-03-14

当你打开github:https://github.com/crawljax/crawljax/blob/master/pom.xml时,你应该可以在pom中看到它是在Java1.7中编译的,你正试图在较低的版本中运行它。下面是这类错误的备忘单:

显示的版本号描述了类文件兼容的JRE版本。报告的主要数字如下:

J2SE 8 = 52,
J2SE 7 = 51,
J2SE 6.0 = 50,
J2SE 5.0 = 49,
JDK 1.4 = 48,
JDK 1.3 = 47,
JDK 1.2 = 46,
JDK 1.1 = 45

您可以在更高版本中运行它,也可以将pom属性更改为1.6并构建它。但在1.7版本中运行它更好。

越国源
2023-03-14

您需要使用Java7运行这段代码,因为它是用Java7编译的。

古明煦
2023-03-14

正如您所指出的,您正在尝试运行一个使用JRE 6为Java 7编译的JAR。只需从Java 7安装JRE:

apt-get install openjdk-7-jre 
apt-get install openjdk-7-jdk # just for good measures

并将其设置为默认JRE:

update-alternatives --config java # and select Java 7
 类似资料:
  • 我的pom.xml: 似乎所有的设置都是正确的,我指的是在pom和服务器上的java版本。

  • 当我试图编译我的GWT应用程序时,我得到的异常值低于异常值。知道吗?提前道谢。

  • 错误:(1,0)原因:com/android/build/gradle/libraryplugin:不受支持的Major.minor版本52.0 存档中 MyPath\AndroidStudioProjects\MyApp\App\libs\ColorPickerPreference\ColorPickerPreference\build.grad 和java版本 java版本“1.7.0_79”

  • 我试图按照Kafka网站https://kafka.apache.org/quickstart上的指南操作,但当我使用kafka2.12-2.5.0并尝试启动zookeeper时,我得到了: 我用的是Redhat7.1。尝试更新Java: 我应该有什么版本的Java?

  • 问题内容: 我正在尝试构建一个应用程序,但是它给出了一些错误。我的JDK版本如下: 这是我的错误日志: 问题答案: 发生这种情况是因为在编译时JDK较高,而在运行时JDK较低。 以下是版本列表:

  • 以前的解决方案建议: 升级Java运行时或 如果有源代码,请使用本地Java编译器(如果有)重新编译该类。 @Brad Parks-https://stackoverflow.com/users/26510/Brad-Parks 由于无法重新编译产生错误的文件,我尝试将我的JRE从JSK1.6升级到JDK1.8-这现在产生了错误: 我对Java还很陌生,所以我可能忽略/误解了一些东西