问题描述
package xyz;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
public class Test {
System.setProperty("webdriver.firefox.FirefoxDriver","C:\\Users\\rutuj\\OneDrive\\Desktop\\New folder\\Drivers\\gecko.exe");
public static void main(String[] args) {
WebDriver driver=new FirefoxDriver();
}
}
解决方法
要使用的 System.setProperty()
key 是 webdriver.gecko.driver
而不是带有 value 设置为 GeckoDriver 的绝对路径。因此,您的代码行将是:
webdriver.firefox.FirefoxDriver
额外考虑
根据this discussion,由于拆分包和直到2018 年 5 月 15 日Selenium 与 Java 9 不完全兼容。
但是,根据此 comment @Jarob22 提到的,Selenium 使用 Java 10 可以正常工作。 Java 9 已经停产了,如果 10 个有效,那么添加额外的东西来尝试和支持它并没有多大意义。
但是随着 e57914a 的登陆,Simon 向我们介绍了基本的 JPMS 支持。有了这种可用性,(mhomnag/selenium-java10-reproducer@bc63889) 现在实际上可以构建,但您可能必须Remove the WebDriverWaiter and just use a sleep for now。
Java 15
由于您使用的是 JDK 15,selenium-server-standalone-3.141.59.jar 仍然与 Java 11 不完全兼容以及 Java 15。但是一旦 Java 11 发布并且 Buck 支持它,工具链就会重新调整以支持 Java 11。
解决方案
战略性解决方案是安装最新版本的 JDK 8u271 并执行 @Tests。