gpt4 book ai didi

java - Selenium Webdriver + Java - Eclipse : java. lang.NoClassDefFoundError

转载 作者:太空宇宙 更新时间:2023-11-04 11:48:49 25 4
gpt4 key购买 nike

我从这里安装了 JDK:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html(此版本适用于 windows x64:Java SE 开发工具包 8u151)

我从这里下载了 eclipse: http://www.eclipse.org/downloads/packages/eclipse-ide-java-developers/oxygenr(Windows 64 位)

我在eclipse中新建了一个项目:File->New->Java Project

然后我从这里下载了 Selenium Java Jars: http://www.seleniumhq.org/download/ ---> java语言

然后在 eclipse 中,我单击我的项目 -> 属性 ->Java 构建路径 -> 库选项卡 -> 添加外部 JAR... -> 我转到“SeleniumDrivers\Java”库(我在那里保存了所有的 JARS我下载了)-> 我检查了那里的所有文件: these files

我点击“确定”并在 eclipse 中创建了一个新类

然后我从这里下载了 chromedriver:http://www.seleniumhq.org/download

我解压后保存在这里:C:\Selenium\Drivers

这是我的脚本:

import org.openqa.selenium.WebDriver;
import org.openqa.selenium.chrome.ChromeDriver;

public class MainClass {

public static void main(String[] args) {
// TODO Auto-generated method stub
System.out.println("hi there\n");

System.setProperty("webdriver.chrome.driver",
"C:/Selenium/Drivers/chromedriver.exe");
WebDriver driver = new ChromeDriver();
driver.get("https://www.facebook.com");
}

}

如您所见,这是一个非常基本的脚本,用于打开 chrome 浏览器并导航至 facebook。

我运行这个脚本并得到这个错误:

Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/config/RegistryBuilder
at org.openqa.selenium.remote.internal.HttpClientFactory.getClientConnectionManager(HttpClientFactory.java:69)
at org.openqa.selenium.remote.internal.HttpClientFactory.<init>(HttpClientFactory.java:57)
at org.openqa.selenium.remote.internal.HttpClientFactory.<init>(HttpClientFactory.java:60)
at org.openqa.selenium.remote.internal.ApacheHttpClient$Factory.getDefaultHttpClientFactory(ApacheHttpClient.java:242)
at org.openqa.selenium.remote.internal.ApacheHttpClient$Factory.<init>(ApacheHttpClient.java:219)
at org.openqa.selenium.remote.HttpCommandExecutor.getDefaultClientFactory(HttpCommandExecutor.java:93)
at org.openqa.selenium.remote.HttpCommandExecutor.<init>(HttpCommandExecutor.java:72)
at org.openqa.selenium.remote.service.DriverCommandExecutor.<init>(DriverCommandExecutor.java:63)
at org.openqa.selenium.chrome.ChromeDriverCommandExecutor.<init>(ChromeDriverCommandExecutor.java:36)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:181)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:168)
at org.openqa.selenium.chrome.ChromeDriver.<init>(ChromeDriver.java:123)
at MainClass.main(MainClass.java:11)
Caused by: java.lang.ClassNotFoundException: org.apache.http.config.RegistryBuilder
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
... 13 more

我不知道如何解决这个问题,你能帮我解决一下,这样我就可以运行我的基本脚本了吗?

最佳答案

java.lang.NoClassDefFoundErrorJRE 找不到 Class 时出现。

简单来说,所需的importsjar 文件不可用。从您分享的快照来看,很明显您已尝试添加与 Java Client 相关的 jar。

在这种情况下,您需要执行以下步骤:

  1. 删除所有引用以前版本的 Selenium 独立服务器Selenium Java 客户端
  2. 的 jar
  3. 仅导入 selenium-server-standalone-3.7.0
  4. IDEProject 菜单中,选择选项 Build Automatically 并为所有项目执行 Clean 选项您的项目。
  5. 执行您的测试。

关于java - Selenium Webdriver + Java - Eclipse : java. lang.NoClassDefFoundError,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56751440/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com