java - NoSuchMethodError : com. google.common.base.Preconditions.checkState(ZLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V

标签 java selenium selenium-webdriver webdriver selenium-chromedriver

出现以下错误:

java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkState(ZLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V

运行时

System.setProperty("webdriver.chrome.driver", "/ocs/browserDrivers/chromedriver.exe");
//ChromeOptions chromeOptions = new ChromeOptions();
//chromeOptions.addArguments("start-maximized");
driver = new ChromeDriver();

升级到selenium 3.14和chromedriver 2.42。不是maven项目

enter image description here

最佳答案

此错误消息...

java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkState(ZLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V

...意味着执行该行时出现错误:

System.setProperty("webdriver.chrome.driver", "/ocs/browserDrivers/chromedriver.exe");

您的主要问题是WebDriver二进制类型与底层操作系统之间的不兼容性

您需要从 chromedriver.storage 下载、提取并使用正确格式的 WebDriver 二进制文件。您的程序如下:

  • Linux 操作系统:

    chromedriver_linux64.tar.gz 2018-09-13 19:30:37 3.85MB
    
  • MAC 操作系统:

    chromedriver_mac64.tar.gz   2018-09-13 18:14:11 5.75MB
    
  • Windows 操作系统:

    chromedriver_win32.zip  2018-09-13 21:11:33 3.42MB
    

如果您使用的是 MAC OS,则 System.setProperty() 行将为:

System.setProperty("webdriver.chrome.driver", "/ocs/browserDrivers/chromedriver"); //drop the extension (.exe) part

如果您使用的是Windows 操作系统,那么System.setProperty() 行将为:

System.setProperty("webdriver.chrome.driver", "C:\\path\\to\\chromedriver.exe"); //mention the absolute path

关于java - NoSuchMethodError : com. google.common.base.Preconditions.checkState(ZLjava/lang/String;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52594514/

相关文章:

google-chrome - WebDriver异常: unknown error: DevToolsActivePort file doesn't exist while trying to initiate Chrome Browser

c# - 在缓存中找不到元素 - 也许页面在查找后已更改 c#

java - JAX-WS 编码错误。 SomeClassV1R5 无法转换为 SomeClass 的目标类型

java - Bukkit Config - 获取分段和安全转换

java - 使用 Selenium WebDriver 确认网页中显示文本

c# - Selenium C# Webdriver IE11 问题

javascript - Selenium /Java : How to write element locator for an element with aria-selected=false

java - 如何使用 Spring Ldap 模板更新密码?

java - 有什么方法可以在 cassandra 中实现无状态分页吗?

java - Chrome 参数不起作用