线程“main”中的异常 java.lang.IllegalStateException:驱动程序可执行文件的路径必须由:系统属性设置

Pra*_*ade 2 java selenium webdriver selenium-chromedriver selenium-webdriver

Exception in thread "main" java.lang.IllegalStateException : The path to the driver executable must be set by the webdriver.chrome.driver system property; for more information, see https://github.com/SeleniumHQ/selenium/wiki/ChromeDriver. The latest version can be downloaded from http://chromedriver.storage.googleapis.com/index.html  
at com.google.common.base.Preconditions.checkState(Preconditions.java:199)  
at org.openqa.selenium.remote.service.DriverService.findExecutable(DriverService.java:109)  
at org.openqa.selenium.chrome.ChromeDriverService.access$0(ChromeDriverService.java:1)  
at org.openqa.selenium.chrome.ChromeDriverService$Builder.findDefaultExecutable(ChromeDriverService.java:137)   at org.openqa.selenium.remote.service.DriverService$Builder.build(DriverService.java:296)   
at org.openqa.selenium.chrome.ChromeDriverService.createDefaultService(ChromeDriverService.java:88)     at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:116)    
at practise_locators.DatePicker.main(DatePicker.java:11)
Run Code Online (Sandbox Code Playgroud)

这是我的代码:

package practise_locators;

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

public class DatePicker {

    public static void main(String[] args){
        WebDriver driver = new ChromeDriver();
        System.setProperty("WebDriver.Chrome.driver", "E:\\chromedriver.exe");
        driver.get("https://www.google.com");
    }

}
Run Code Online (Sandbox Code Playgroud)

Deb*_*anB 5

该错误说明了一切:

Exception in thread "main" java.lang.IllegalStateException : The path to the driver executable must be set by the webdriver.chrome.driver system property; for more information, see https://github.com/SeleniumHQ/selenium/wiki/ChromeDriver. The latest version can be downloaded from http://chromedriver.storage.googleapis.com/index.html  
at com.google.common.base.Preconditions.checkState(Preconditions.java:199) 
Run Code Online (Sandbox Code Playgroud)

错误中的以下短语暗示包含webdriver.chrome.driver 的行中存在错误

该错误可能是以下任一情况:

您的代码似乎有两个问题,如下所示:

  • 第一个问题是指定密钥,而不是"WebDriver.Chrome.driver"应该"webdriver.chrome.driver"如下所示:

    System.setProperty("webdriver.chrome.driver", "E:\\chromedriver.exe");
    
    Run Code Online (Sandbox Code Playgroud)
  • 第二个问题是在程序中提及密钥的顺序,该密钥应该在前面,如下所示: "webDriver.chrome.driver"WebDriver driver = new ChromeDriver();

    System.setProperty("WebDriver.Chrome.driver", "E:\\chromedriver.exe");
    WebDriver driver = new ChromeDriver();
    driver.get("https://www.google.com");
    
    Run Code Online (Sandbox Code Playgroud)