尽管添加依赖项,Selenium 中仍出现 NoClassDefFoundError
在您的问题中,您提到遇到“java.lang.NoClassDefFoundError: org/openqa/selenium” /WebDriver”错误,尽管在 pom.xml 中添加了 Selenium 依赖项。让我们深入研究其背后的原因并提供解决方案。
虽然您在 pom.xml 中包含了依赖项,但您的本地 Maven 存储库中似乎不存在 Selenium JAR。该错误表明找不到 WebDriver 类,这表明依赖项尚未正确解决或安装。
您在存储库中找不到“org/openqa”包的事实是可能是由于依赖项的版本控制。 Selenium 库以前由“openqa”组织维护,现在由“seleniumhq”管理。
因此,最新版本 Selenium 的正确工件 ID 是“selenium-java”,groupId 为“org” .seleniumhq.selenium”。您提到使用版本 3.7.1,该版本位于“openqa”命名空间中,因此这可能是问题所在。
解决方案:
要解决此错误,确保您的 pom.xml 中有正确版本的依赖项:
<dependency> <groupId>org.seleniumhq.selenium</groupId> <artifactId>selenium-java</artifactId> <version>latest</version> </dependency>
正确添加依赖项后,运行“mvn clean install”以下载必要的 JAR。确保检查 JAR 是否安装在本地 Maven 存储库 (~/.m2/repository) 中。
对于 Eclipse 用户,您可能需要手动将 Selenium JAR 添加到项目的类路径中。右键单击您的项目,选择“构建路径”> “配置构建路径”,并将 Maven 存储库中的 JAR 添加到“类路径”选项卡。
最后,清理并重建项目以确保 WebDriver 类在项目中可用。这应该可以解决“NoClassDefFoundError”并允许您成功导入 Selenium Webdriver。
以上是尽管在 pom.xml 中添加了 Selenium 依赖项,为什么我还是收到“NoClassDefFoundError”?的详细内容。更多信息请关注PHP中文网其他相关文章!