当前位置: 首页 > 知识库问答 >
问题:

chromedriver的NoClassDefFoundError

牟嘉
2023-03-14

当我试图使用chromeDrive运行测试时,我会得到这个错误:

我将chromedriver部署到ext文件夹,并为我的浏览器提供了正确的版本。是什么导致了这个问题?它似乎来自@BeforeClass,如下所示:

@BeforeClass
public static void setUp() throws IOException {

    System.setProperty("webdriver.chrome.driver", "ext/chromedriver");
    service = createDefaultService();
    driver = new ChromeDriver(service);
    Path testResults = Paths.get("build", "test-results");
    if (!Files.exists(testResults)) {
        Files.createDirectory(testResults);
    }
}

共有1个答案

东明德
2023-03-14

NoClassDefFoundError当JVM无法在运行时找到编译时可用的特定类时发生。例如,如果我们解析了一个类的方法调用或访问了一个类的任何静态成员,而该类在运行时不可用,那么JVM将抛出NoClassDefFoundError

您看到的错误是:

java.lang.NoClassDefFoundError: org/openqa/selenium/WebDriver at java.base/java.lang.Class.getDeclaredMethods0(Native Method)

这清楚地表明,Selenium正试图在运行时从不再可用的org/openqa/Selenium/WebDriver解析特定的类。

系统中。setProperty()line您需要通过ChromeDriver的绝对路径,如下所示:

System.setProperty("webdriver.chrome.driver", "/complete/path/to/chromedriver");

你可以在以下网站上找到一些相关的详细讨论:

  • 线程“main”java中出现异常。lang.NoClassDefFoundError:org/openqa/selenium/WebDriver
 类似资料:
  • Appium 支持对基于 Chrome 内核的 H5 应用(混合应用)或者网页(Chrome 中的网页或者内建的浏览器中的网页)进行自动化。Appium 管理维护着一个 Chromedriver 实例,当需要的时候,使用代理模式,将命令传递给这个实例。这和最新版本的 Chromedriver是绑定的。我们可以通过 npm 包来安装appium-chromedriver。(Github: appiu

  • 问题内容: 我在代理服务器后面。使用Selenium 2.39,Python 2.7.6和ChromeDriver 2.9,每当我在Chrome实例上调用时,都会收到HTTP 407错误。使用FirefoxDriver时,不会发生此类错误。 可以将问题简化为以下脚本,我将其另存为(如上述堆栈跟踪所示): 此脚本成功打开了Chrome并导航到Google。在随后导致上述崩溃,留下一个死ChromeD

  • OpenQa.Selenium.WebDriverException:无法启动http://localhost:58266/bei OpenQa.Selenium.DriverService.start() bei OpenQa.Selenium.Remote.DriverServiceCommandExecutor.Execute(命令命令执行)bei OpenQa.Selenium.Remot

  • 我用的是Mac笔记本电脑,我是从youtube上得到的Mac教程,但它对其他学生也适用 原谅我,我对硒还不熟悉 导入org.openqa.selenium.webdriver;导入org.openqa.selenium.chrome.chromedriver;

  • 问题内容: 当我尝试从该网站访问数据时,我尝试使用Selenium自动化从网站中获取数据 这是我的鳕鱼 如何获取我的输出并删除此异常? 提前致谢 问题答案: 为了检查您的代码,我尝试了以下操作: } 它可以与FireFox(29.0)和Chrome(34.0)驱动程序正常工作。我使用了以下jar-s: selenium-server-standalone-2.41.0.jar selenium-j