简体   繁体   English

java.lang.UnsupportedClassVersionError:com / crawljax / cli / JarRunner:不支持的major.minor版本51.0

[英]java.lang.UnsupportedClassVersionError: com/crawljax/cli/JarRunner : Unsupported major.minor version 51.0

I have downloaded the program: 我已经下载了程序:

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

Unzip it: 解压缩:

unzip crawljax-cli-3.6.zip

get in the folder and run: 进入文件夹并运行:

java -jar crawljax-cli-3.6.jar

This is the error I get: 这是我得到的错误:

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.

I have done this: 我已经做到了:

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

But is the same error 但是是同样的错误

My version of java: 我的Java版本:

javac -version

javac 1.6.0_35 javac 1.6.0_35

java -version

java version "1.6.0_35" OpenJDK Runtime Environment (IcedTea6 1.13.7) (6b35-1.13.7-1~deb7u1) OpenJDK 64-Bit Server VM (build 23.25-b01, mixed mode) Java版本“ 1.6.0_35” OpenJDK运行时环境(IcedTea6 1.13.7)(6b35-1.13.7-1〜deb7u1)OpenJDK 64位服务器VM(内部版本23.25-b01,混合模式)

I have read this is because I have compiled with a higher version than the one is executing on the JVM, but I have no source code here to recompile, I just have the .jar. 我读到这是因为我使用的版本比在JVM上执行的版本高,但是这里没有可重新编译的源代码,我只有.jar。

您需要使用Java 7运行此代码,因为这是使用它进行编译的。

As you noted, you are attempting to run a JAR compiled for Java 7 with JRE 6. Just install JRE from Java 7: 如您所述,您正在尝试使用JRE 6运行为Java 7编译的JAR。只需从Java 7安装JRE:

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

And set it as the default JRE: 并将其设置为默认的JRE:

update-alternatives --config java # and select Java 7

When you open github : https://github.com/crawljax/crawljax/blob/master/pom.xml you should be able see in pom it is compiled in Java 1.7 and you are trying to run it in lower version. 当您打开github时: https : //github.com/crawljax/crawljax/blob/master/pom.xml您应该能够在pom中看到它是Java 1.7编译的,并且您试图在较低版本中运行它。 Below is cheatsheet for this kinda of errors: 以下是针对此类错误的备忘单:

The version number shown describes the version of the JRE the class file is compatible with. 显示的版本号描述了与类文件兼容的JRE的版本。 The reported major numbers are: 报告的主要数字是:

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

Either you can run it in higher version or change pom properties to 1.6 and build it. 您可以在更高版本中运行它,也可以将pom属性更改为1.6并进行构建。 but running it in 1.7+ version is better idea. 但最好在1.7+版本中运行它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 java.lang.UnsupportedClassVersionError:com / google / doclava / Doclava:不支持的major.minor版本51.0 android build - java.lang.UnsupportedClassVersionError: com/google/doclava/Doclava : Unsupported major.minor version 51.0 android build java.lang.UnsupportedClassVersionError:com / google / mystorage / server / GreetingServiceImpl:不支持的major.minor版本51.0 - java.lang.UnsupportedClassVersionError: com/google/mystorage/server/GreetingServiceImpl : Unsupported major.minor version 51.0 java.lang.UnsupportedClassVersionError:com / mysite / folders / Folders:不支持的major.minor版本51.0 - java.lang.UnsupportedClassVersionError: com/mysite/folders/Folders : Unsupported major.minor version 51.0 Google App Engine java.lang.UnsupportedClassVersionError:org / ritesh / RiteshServlet:不支持的major.minor版本51.0 - Google App Engine java.lang.UnsupportedClassVersionError: org/ritesh/RiteshServlet : Unsupported major.minor version 51.0 java.lang.UnsupportedClassVersionError:myApp:不支持的major.minor版本51.0(无法加载类myApp)在Linux上 - java.lang.UnsupportedClassVersionError: myApp : Unsupported major.minor version 51.0 (unable to load class myApp) On Linux java.lang.UnsupportedClassVersionError不支持的major.minor版本51.0 rhdfs - java.lang.UnsupportedClassVersionError Unsupported major.minor version 51.0 rhdfs servlet java.lang.UnsupportedClassVersionError:不支持的major.minor版本51.0 - servlet java.lang.UnsupportedClassVersionError: Unsupported major.minor version 51.0 错误:java.lang.UnsupportedClassVersionError JENKINS中不支持的major.minor版本51.0 - Error: java.lang.UnsupportedClassVersionError Unsupported major.minor version 51.0,in JENKINS Maven / Jenkins java.lang.UnsupportedClassVersionError:不支持的major.minor版本51.0 - Maven/Jenkins java.lang.UnsupportedClassVersionError: Unsupported major.minor version 51.0 java.lang.UnsupportedClassVersionError:com / android / build / gradle / AppPlugin:不支持的major.minor版本52.0 - java.lang.UnsupportedClassVersionError: com/android/build/gradle/AppPlugin : Unsupported major.minor version 52.0
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM