试图从Eclipse中的Selenium JAVA项目调用Chrome驱动程序,得到一个构建错误。
尝试的操作:
System.setProperty("webdriver.chrome.driver","//Path//chromedriver");
- 将可执行文件添加到变量
PATH
。 - 添加了可执行的 Chrome 驱动程序
.exe
到构建路径。
仍然收到构建错误。如错误中所述,路径中存在铬驱动程序.exe
。
错误:
所需库的存档:项目"FirstSeleniumTest"中的"lib/Chrome/chromedriver"无法读取或不是有效的ZIP文件 FirstSeleniumTest 构建路径 构建路径问题
自动化人员的常见问题之一。您可以通过以下方式解决此问题:
-
将 ChromeDriver exe 保留到项目根目录中。无需执行任何操作。
-
如果您将ChromeDriver保留在ProjectRoo/resources中,则必须使用 System.setProperty("webdriver.chrome.driver",System.getProperty("user.dir"(+File.seprator+"resources/chromedriver.exe"(;
在第 1 步中- 您错过了.exe扩展。 System.setProperty("webdriver.chrome.driver","//Path//chromedriver.exe"(;
希望对您有所帮助。
此错误消息...
Archive for required library: 'lib/Chrome/chromedriver' in project 'FirstSeleniumTest' cannot be read or is not a valid ZIP file
。暗示ChromeDriver无法启动/生成新的浏览上下文,即Chrome浏览器会话。
由于库冲突,并且在大多数情况下将 maven 用作构建工具时,会出现此问题。可能是本地 (maven( 存储库中的现有库是错误的,maven 尝试打开,但失败了。
溶液
以下步骤将解决此问题:
- 确保系统和日食中的JDK指向同一版本。
- 从目录中删除所有jar文件
Libs
然后复制->再次粘贴原始 Jar。最后做一个Clean
->Rebuild
- (如果使用 maven(删除相应的maven下载文件夹,即
.m2
并做maven
->update project
在日食中。 - (如果使用maven(有时只删除
/.m2/repository
有效。 - 有时只需关闭并重新打开项目也可以。
- 尝试使用没有
m2e
功能的Eclipse。 当您使用macos时,您无需添加扩展名,即
.exe
(如Windows(,如下所示:System.setProperty("webdriver.chrome.driver","/path/to/chromedriver");
TL; DR
您可以在以下位置找到一些相关的讨论:
- 无法读取或不是有效的ZIP文件 - 如何修复Maven构建路径错误与损坏的.jar文件
- 错误375249 - Eclipse 在构建路径上为完全健康的 jar 文件抛出"无法读取或不是有效的 ZIP 文件"错误
问题已解决,需要将chromedriver.exe文件切换到可执行文件,并且正在将文件添加到.exe不需要的构建路径。