我的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)
答案 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下载的文件
可能会对您有很大帮助!