gpt4 book ai didi

java - 如何在没有 Eclipse 的情况下运行 selenium 代码?

转载 作者:行者123 更新时间:2023-12-03 06:05:29 24 4
gpt4 key购买 nike

这是我的java代码:

import java.util.List;

import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.support.ui.ExpectedConditions;
import org.openqa.selenium.support.ui.WebDriverWait;

class mytestclass {
public static void main(String[] args) {

WebDriver driver = new FirefoxDriver();
driver.get("http://www.google.com");
WebElement element = driver.findElement(By.name("q"));
element.sendKeys("selenium!\n"); // send also a "\n"
element.submit();

// wait until the google page shows the result
WebElement myDynamicElement = (new WebDriverWait(driver, 10))
.until(ExpectedConditions.presenceOfElementLocated(By.id("resultStats")));

List<WebElement> findElements = driver.findElements(By.xpath("//*[@id='rso']//h3/a"));

// this are all the links you like to visit
for (WebElement webElement : findElements)
{
System.out.println(webElement.getAttribute("href"));
}
}
}

我在 cmd 中输入了以下命令来编译 .java 文件:
javac -classpath "selenium-server-standalone-2.53.1.jar;selenium-java-2.53.1\selenium-2.53.1\selenium-java-2.53.1.jar;selenium-java-2.53.1\selenium-2.53.1\selenium-java-2.53.1-srcs.jar;D:\Adit\Selenium\selenium-java-2.53.1\selenium-2.53.1\libs\*.jar" mytestclass.java

当我尝试使用'java mytestclass'运行它时,它在cmd中给出了以下错误:
Error: A JNI error has occurred, please check your installation and try again
Exception in thread "main" java.lang.NoClassDefFoundError: org/openqa/selenium/WebDriver
at java.lang.Class.getDeclaredMethods0(Native Method)
at java.lang.Class.privateGetDeclaredMethods(Unknown Source)
at java.lang.Class.privateGetMethodRecursive(Unknown Source)
at java.lang.Class.getMethod0(Unknown Source)
at java.lang.Class.getMethod(Unknown Source)
at sun.launcher.LauncherHelper.validateMainClass(Unknown Source)
at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source)
Caused by: java.lang.ClassNotFoundException: org.openqa.selenium.WebDriver
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)
... 7 more

我曾尝试使用 gradle 来编译 jar 文件。我的文件树如下所示:
This is my file tree

在图像中突出显示的 libs 文件夹中,我复制了所有的 jar 文件。我提供下面的图片:

JAR files

我的 build.gradle 文件有以下几行:
apply plugin: 'java'

dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
}

现在,如果我给出命令“gradle build”,那么它会显示“BUILD SUCCESSFUL”。
:compileJava
:processResources UP-TO-DATE
:classes
:jar
:assemble
:compileTestJava UP-TO-DATE
:processTestResources UP-TO-DATE
:testClasses UP-TO-DATE
:test UP-TO-DATE
:check UP-TO-DATE
:build

BUILD SUCCESSFUL

Total time: 2.738 secs

但是,如果我尝试使用命令“java mytestclass”运行编译的类文件,我会再次遇到同样的错误。

我该如何解决?我想在没有 Eclipse 的情况下运行 selenium。我正在运行 Windows,我的 Java 版本是 1.8.0_101。

最佳答案

我创建了一个 libs 文件夹,并将 selenium-java-2.53.1 的 libs 目录中的所有 jar 文件复制到新创建的 libs 文件夹中。然后我用 Gradle 编译了我的 java 代码。我的 build.gradle 文件:

apply plugin: 'java'

dependencies {
compile fileTree(dir: 'libs', include: '*.jar')
}

然后我在类路径中添加了两个必需的 jar 文件,它解决了我的问题。

关于java - 如何在没有 Eclipse 的情况下运行 selenium 代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39119082/

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