Selenium 在intellij中为gecko驱动程序设置相对路径会引发错误

Selenium 在intellij中为gecko驱动程序设置相对路径会引发错误,selenium,selenium-webdriver,Selenium,Selenium Webdriver,将geckodriver放在参考资料中,并在我正在使用的机器上映射它,但不在任何其他机器上。我需要它将其导出到其他机器,这样我就创建了一个jar,我需要在任何其他机器上运行它,但是在其他机器上运行jar时抛出了“驱动程序可执行文件的路径必须由webdriver.gecko.driver系统属性设置”错误 您可以将其设置为:- System.setProperty("webdriver.gecko.driver", new File("./src/main/resources/geckodrive

将geckodriver放在参考资料中,并在我正在使用的机器上映射它,但不在任何其他机器上。我需要它将其导出到其他机器,这样我就创建了一个jar,我需要在任何其他机器上运行它,但是在其他机器上运行jar时抛出了“驱动程序可执行文件的路径必须由webdriver.gecko.driver系统属性设置”错误

您可以将其设置为:-

System.setProperty("webdriver.gecko.driver", new File("./src/main/resources/geckodriver").getCanonicalPath());

您似乎缺少文件扩展名。 以下内容适用于使用相对文件路径的我:

System.setProperty("webdriver.gecko.driver", ".\\WebDrivers\\geckodriver.exe");
编辑:您是否尝试交换这两行的顺序? 除非我弄错了,否则应该在创建WebDriver之前设置system属性

WebDriver driver= new FirefoxDriver();
System.setProperty("webdriver.gecko.driver", "./src/main/resources/geckodriver");
应该是

System.setProperty("webdriver.gecko.driver", "./src/main/resources/geckodriver");
WebDriver driver= new FirefoxDriver();

编辑后的答案可能重复。请尝试一下。这在从ide ie intellij运行时有效,但不能从可执行jar运行。。firefox启动但不会加载url。这很可能是另一个问题。如果Firefox是从可执行jar启动的,那么您的路径是正确的。。
System.setProperty("webdriver.gecko.driver", "./src/main/resources/geckodriver");
WebDriver driver= new FirefoxDriver();