微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在JAva 8中使用最新的硒版本会导致LoggingHandler错误

我正在尝试运行一个简单的Selenium脚本,该脚本会打开chrome驱动程序以导航至url.下面是我的代码

WebDriver driver =new ChromeDriver();
driver.get("http://www.google.com");
WebElement element=driver.findElement(By.name("q"));
element.sendKeys("Cheese!!!");
element.submit();
System.out.println("Page title is: " + driver.getTitle());
driver.quit();

在运行代码时,出现以下错误

Exception in thread "main" java.lang.NoClassDefFoundError: org/openqa/selenium/logging/LoggingHandler
at Main.main(Main.java:16)
at 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:483)
at com.intellij.rt.execution.application.AppMain.main(AppMain.java:140)
Caused by: java.lang.classNotFoundException: org.openqa.selenium.logging.LoggingHandler
at java.net.urlclassloader$1.run(urlclassloader.java:372)
at java.net.urlclassloader$1.run(urlclassloader.java:361)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.urlclassloader.findClass(urlclassloader.java:360)
at java.lang.classLoader.loadClass(ClassLoader.java:424)

我的pom文件具有以下依赖关系:

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-java</artifactId>
    <version>3.4.0</version>
</dependency>
<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-server</artifactId>
    <version>3.4.0</version>
</dependency>
<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-firefox-driver</artifactId>
    <version>3.4.0</version>
</dependency>
<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-chrome-driver</artifactId>
    <version>3.4.0</version>
</dependency>
<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-api</artifactId>
    <version>3.4.0</version>
</dependency>

是什么导致上述错误?我尝试过在线搜索,但找不到答案.

解决方法:

错误似乎是找不到类LoggingHandler.该类通常位于selenium-api依赖项中.您可以尝试使用2.53.1版本而不是3.4.0.该版本缺少类.

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-api</artifactId>
    <version>2.53.1</version>
</dependency>

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐