Selenium webdriver java.lang.NoClassDefFoundError:com/google/common/collect/Maps-Selenium

Selenium webdriver java.lang.NoClassDefFoundError:com/google/common/collect/Maps-Selenium,selenium-webdriver,Selenium Webdriver,尊敬的硒专家: 我在JPA 2.0程序中遇到以下运行时错误,出于某种原因,该程序似乎与Firefox配置文件有关: Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/collect/Maps at org.openqa.selenium.firefox.FirefoxProfile.(FirefoxProfile.java:56) at org.openqa.selenium.

尊敬的硒专家:

我在JPA 2.0程序中遇到以下运行时错误,出于某种原因,该程序似乎与Firefox配置文件有关:

Exception in thread "main" java.lang.NoClassDefFoundError: com/google/common/collect/Maps at org.openqa.selenium.firefox.FirefoxProfile.(FirefoxProfile.java:56) at org.openqa.selenium.firefox.FirefoxProfile.(FirefoxProfile.java:79) at model.DownloadCarDetail.getMercedezDetail(model.DownloadCarDetail:72) at model.DownloadCarDetail.getMercedezDetail.main (model.DownloadCarDetail.getMercedezDetail.java:47) Caused by: java.lang.ClassNotFoundException: com.google.common.collect.Maps at java.net.URLClassLoader$1.run(URLClassLoader.java:366) at java.net.URLClassLoader$1.run(URLClassLoader.java:355) at java.security.AccessController.doPrivileged(Native Method) at java.net.URLClassLoader.findClass(URLClassLoader.java:354) at java.lang.ClassLoader.loadClass(ClassLoader.java:424) at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) at java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 4 more Java Result: 1 线程“main”java.lang.NoClassDefFoundError中出现异常:com/google/common/collect/Maps 位于org.openqa.selenium.firefox.FirefoxProfile.(FirefoxProfile.java:56) 位于org.openqa.selenium.firefox.FirefoxProfile.(FirefoxProfile.java:79) 在model.DownloadCarDetail.getMercedezDetail(model.DownloadCarDetail:72) 在model.DownloadCarDetail.getMercedezDetail.main(model.DownloadCarDetail.getMercedezDetail.java:47) 原因:java.lang.ClassNotFoundException:com.google.common.collect.Maps 在java.net.URLClassLoader$1.run(URLClassLoader.java:366) 在java.net.URLClassLoader$1.run(URLClassLoader.java:355) 位于java.security.AccessController.doPrivileged(本机方法) 位于java.net.URLClassLoader.findClass(URLClassLoader.java:354) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:424) 位于sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308) 位于java.lang.ClassLoader.loadClass(ClassLoader.java:357) ... 4更多 Java结果:1 我将Firefox保持在版本15,以便SeleniumWebDriver支持它,但我怀疑问题在于无法读取配置文件目录

非常感谢您的帮助

非常感谢,


George

您看到的问题与您的Firefox配置文件无关

实际上,是JVM类加载器抱怨它找不到
com.google.common.collect.Maps


这通常意味着您的类路径上没有(这是Selenium的依赖项)。清理并重建项目,检查类路径,检查可能存在的库的各种版本。如果您使用的是某种依赖关系管理系统(Maven、Ivy等),请检查其配置是否正确。

感谢您提供解决此问题的建议。我找到了解决根本问题的确切答案


George

打开此链接并下载Java 3.11.0(当前版本)在netbeans或eclips上打开zip文件到桌面单击selenium-Java-3.11.0\libs中的add jars/file选择所有文件也在selenium-Java-3.11.0中选择client-combined-3.11.0.jar您会没事的。不要记得添加
System.setProperty(“webdriver.chrome.driver”,“C:\\chromedriver.exe”)代码。您可以下载chromedriver此链接

在我的案例中,番石榴依赖项已损坏。在我删除损坏的jar并重建整个项目后,工作正常。

将下载自的.jar文件导入Eclipse(取决于当前版本)。

在下面添加maven依赖项并清理和编译代码

<!-- https://mvnrepository.com/artifact/com.google.common/google-collect -->
<dependency>
    <groupId>com.google.common</groupId>
    <artifactId>google-collect</artifactId>
    <version>0.5</version>
</dependency>

com.google.common
谷歌收藏
0.5

在何处添加此行-->System.setProperty(“webdriver.chrome.driver”,“C:\\chromedriver.exe”);从这个链接下载jar文件并将其添加到类路径解决了我的问题