ChromeDriver метод setExperimentalOption не работает

ChromeDriver метод setExperimentalOption не работает

Есть простой код, посмотреть/скачать можно на Git https://github.com/a040985/chromeDriver/tree/master/downloadprice

public static void main(String[] args) throws InterruptedException {

    System.setProperty("webdriver.chrome.driver", "D:\\chromedriver.exe");

    ChromeOptions options = new ChromeOptions();
    Map<String, Object> prefs = new HashMap<String, Object>();
    prefs.put("download.default_directory", "D:\\");
    options.setExperimentalOption("prefs", prefs); //если убрать эту строку то работает норм
    ChromeDriver driver = new ChromeDriver(options);

    driver.get("http://www.google.com/");
    Thread.sleep(2000);
    driver.get("https://chromedriver.storage.googleapis.com/83.0.4103.39/chromedriver_win32.zip");
    Thread.sleep(10000);

    driver.quit();
}

Когда его запускаю в idea всё работает норм. Но когда запускаю скомпилированный .jar файл через .bat файл, выдает ошибку “NoSuchMethodError:”

D:\java\myProject\downloadprice\out\artifacts\downloadprice_jar>java -jar D:\java\myProject\downloadprice\out\artifacts\downloadprice_jar\downloadprice.jar
Exception in thread "main" java.lang.NoSuchMethodError: org.openqa.selenium.chrome.ChromeOptions.setExperimentalOption(Ljava/lang/String;Ljava/lang/Object;)Lorg/openqa/selenium/chromium/ChromiumOptions;
        at by.bestproger.project.downloadprice.runner.GettingStarted.main(GettingStarted.java:17)

Ошибка указывает на метод «options.setExperimentalOption("prefs", prefs);», но почему программа не видит этот метод непонятно. Если убрать этот метод, то всё работает норм, но убрать я его не могу т.к. мне нужно указать путь для сохранения файла. Прошу помощи, в чем может быть проблема?


Ответы (0 шт):