将Selenium与Mozilla的GeckoDriver一起使用时,找不到CircularOutputStream类exception

当我使用Java Selenium Firefox geckodriver时出现问题。 这是问题所在:

*操作系统:Windows 7

* Selenium版本:Selenium 3.0.0 beta4

* Java:8

* Geckodriver:v0.10.0

错误消息:org.openqa.selenium中org.openqa.selenium.firefox.FirefoxBinary。(FirefoxBinary.java:56)中的线程“main”java.lang.NoClassDefFoundError:org / openqa / selenium / remote / internal / CircularOutputStream中的exception.firefox.FirefoxBinary。(FirefoxBinary.java:52)at tool.openqa.selenium.firefox.FirefoxDriver。(FirefoxDriver.java:92)at tools.Cadencie.LoginCad(Cadencie.java:24)at tools.Cadencie.main( Cadencie.java:73)sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java .lang.reflect.Method.invoke(Method.java:498)at com.intellij.rt.execution.application.AppMain.main(AppMain.java:147)引起:java.lang.ClassNotFoundException:org.openqa.selenium java.net.URLClassLoader.findClass(URLClassLoader.java:381)中的.remote.internal.CircularOutputStream,位于java.lang.ClassLoader.loadClass(ClassLoader.java:424)at sun.misc.Launcher $ AppClassLoader.loadClass(Launcher.java:331)at java.lang.ClassLoader.loadClass(ClassLoader.java:357)… 10更多

码:

public class Cadencie { static WebDriver driver; public void LoginCad(){ //System.setProperty("webdriver.firefox.bin", "C:\\Program Files (x86)\\Mozilla Firefox\\firefox.exe"); System.setProperty("webdriver.gecko.driver", "C:\\Program Files (x86)\\Mozilla Firefox\\geckodriver.exe"); driver = new FirefoxDriver(); driver.get("http://172.16.1.133:8090/CADENCIE/servlet/app"); try { Thread.sleep(1000); } catch(InterruptedException e){ e.printStackTrace(); } Utilities.switchToWindow("Cadencie - User Logon [LOGON]", driver); try{ Thread.sleep(2000); } catch(InterruptedException e){ e.printStackTrace(); } driver.findElement(By.id("idBANK")).clear(); driver.findElement(By.id("idBANK")).sendKeys("48"); driver.findElement(By.id("idEMPLOYEE")).clear(); driver.findElement(By.id("idEMPLOYEE")).sendKeys("200003"); driver.findElement(By.id("idPASSWORD")).clear(); driver.findElement(By.id("idPASSWORD")).sendKeys("Cadencie1"); driver.findElement(By.id("maintLOGON")).click(); driver.findElement(By.id("idPASSWORD")).clear(); driver.findElement(By.id("idPASSWORD")).sendKeys("Cadencie1"); driver.findElement(By.id("maint")).click(); } 

我认为这可能是一个不一致的版本问题。 因为我有另一个使用maven,selenium 2.52.0的自动化项目..但不确定这是否会导致问题。 我这次不是在使用maven。 只是尝试创建一个JAVA GUI程序(工具包)。

exception是因为classpath中缺少jar文件。

如果您不使用Maven,请检查MVN Repository页面上的Compile Dependencies并手动将jar添加到类路径中。

如果您正在使用Maven,请参阅: java.lang.classnotfoundexception:org.openqa.selenium.io.Circular OutputStream