java.lang.UnsupportedClassVersionError:org / openqa / gr id / selenium / GridLauncher(不支持的major.minor版本50.0)

时间:2012-07-18 00:14:39

标签: java selenium selenium-server

我的Selenium文件夹中有这个selenium服务器jar文件。当我尝试使用java - jar selenium-server-standalone-2.0b3.jar命令执行此操作时,我收到此版本差异错误。任何人都可以告诉我我在哪里犯了错误吗?

Exception in thread "main" java.lang.UnsupportedClassVersionError: org/openqa/gr
id/selenium/GridLauncher (Unsupported major.minor version 50.0)
        at java.lang.ClassLoader.defineClass0(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.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 java.lang.ClassLoader.loadClassInternal(Unknown Source)

6 个答案:

答案 0 :(得分:16)

该消息(版本为50.0)表示Selenium服务器需要运行java 6,但您尝试使用某些早期版本的java运行它。

要找出您正在使用的java版本,请运行:

java -version

如果你安装了java 6,但它没有被使用,你可能需要给java可执行文件提供完整的路径名,所以如果在linux上就是这样的话:

/usr/local/jre6/bin/java -jar selenium.jar

或者喜欢这个,如果在Windows上:

"C:\Program Files (x86)\Java\jre6\bin\java.exe" -jar selenium.jar

(当然,你需要调整该命令以匹配java实际存在于你机器上的位置)

答案 1 :(得分:2)

我有同样的问题,我使用jre6,我去了项目属性,更改了JRE系统库以使用jre1.8并且它工作..你可以选择备用jre并添加你系统上安装的最新jre

答案 2 :(得分:1)

除Java版本外,Java 供应商显然可能是另一个重要变量。我登陆了这个线程,其中包含OP问题的变体,其中堆栈跟踪表明需要Java 8,即使我已经使用OpenJDK 8。

  

线程中的异常" main" java.lang.UnsupportedClassVersionError:org / openqa / grid / selenium / GridLauncherV3:不支持的major.minor版本52.0           at java.lang.ClassLoader.defineClass1(Native Method)           at java.lang.ClassLoader.defineClass(ClassLoader.java:800)           at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)           at java.net.URLClassLoader.defineClass(URLClassLoader.java:449)           在java.net.URLClassLoader.access $ 100(URLClassLoader.java:71)           在java.net.URLClassLoader $ 1.run(URLClassLoader.java:361)           在java.net.URLClassLoader $ 1.run(URLClassLoader.java:355)           at java.security.AccessController.doPrivileged(Native Method)           在java.net.URLClassLoader.findClass(URLClassLoader.java:354)           at java.lang.ClassLoader.loadClass(ClassLoader.java:425)           at sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:308)           at java.lang.ClassLoader.loadClass(ClassLoader.java:358)           在sun.launcher.LauncherHelper.checkAndLoadMain(LauncherHelper.java:482)

切换到Oracle的JVM让我超越了它。

答案 3 :(得分:0)

在我做“ java -version”的情况下,我得到了:

Picked up _JAVA_OPTIONS: -Duser.home=C:\Users\xxxx
java version "1.7.0_151"
Java(TM) SE Runtime Environment (build 1.7.0_151-b33)
Java HotSpot(TM) Client VM (build 24.151-b33, mixed mode)

和我的“ JAVA_HOME”不同,如下所述:

C:\Program Files\Java\jdk1.8.0_91

所以我刚刚在环境变量下的路径中添加了“ jdk1.8.0_91”,如下所示:

之前:

C:\Program Files (x86)\Java\jre7\bin;

之后:

C:\Program Files\Java\jdk1.8.0_91\jre\bin; C:\Program Files (x86)\Java\jre7\bin;

然后,我能够成功运行“ webdriver-manager”。我希望这对其他人有帮助。

答案 4 :(得分:-1)

我遇到了类似的问题。只需安装最新版本的Nodejs,Protractor和JDK即可。它没有任何问题。

最初我遇到了JRE版本不匹配的问题。

我有Selenium web驱动程序3.0和Jre 1.7。我卸载了所有并安装了最新版本。

答案 5 :(得分:-1)

使用

安装最新版本的Java即12。
brew cask install java

卸载https://www.java.com/en/download/help/mac_uninstall_java.xml之后的从Oracle下载的文件

可能会对您有很大帮助!