我在将 Selenium 作为外部库导入/添加到我的 (Intelij) JavaFX 项目时遇到问题

问题描述 投票:0回答:1

我正在尝试在使用 JAVA 开发的 Web 自动化软件中使用 selenium,以下是我尝试使用 Intelij 作为代码编辑器执行的代码片段:

public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);

        // Set the path to the chromedriver executable
        System.setProperty("webdriver.chrome.driver", "chromedriver.exe");

        // Initialize a ChromeDriver instance
        WebDriver driver = new ChromeDriver();

        // Open a webpage
        driver.get("https://github.com/login");

        // Perform any additional actions here
        try {
            Thread.sleep(5000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }
        
        WebElement name_query = driver.findElement(By.name("login"));
        System.out.println("Enter your username:");
        String name = sc.nextLine();
        name_query.sendKeys(name);

        WebElement password_query = driver.findElement(By.name("password"));
        System.out.println("Enter your password:");
        String password = sc.nextLine();
        password_query.sendKeys(password);

        WebElement submit_btn = driver.findElement(By.name("commit"));
        submit_btn.click(); 

        try {
            Thread.sleep(10000);
        } catch (InterruptedException e) {
            e.printStackTrace();
        }

        // Close the browser
        driver.quit();

        sc.close();
    }
}

我做错了什么吗?

该项目是一个使用 POM 文件的 Maven 项目,因此我尝试使用以下代码片段将其作为依赖项手动添加到我的 pom.xml 文件中:

<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
        <dependency>
            <groupId>org.seleniumhq.selenium</groupId>
            <artifactId>selenium-java</artifactId>
            <version>4.21.0</version>
        </dependency>

当我在主 Java 文件中尝试以下代码片段时,所需的段都不起作用,因为它们以红色突出显示。

这是模块信息内容:

module com.example.seleniumjavafxtest {
    requires javafx.controls;
    requires javafx.fxml;


    opens com.example.seleniumjavafxtest to javafx.fxml;
    exports com.example.seleniumjavafxtest;
}
java selenium-webdriver intellij-idea dependencies
1个回答
0
投票

我解决了这个问题,发现

pom.xml
文件中缺少一些依赖项,只需在 xml 文件中包含最新的 selenium Maven 依赖项,如下所示:

<!-- https://mvnrepository.com/artifact/org.seleniumhq.selenium/selenium-java -->
<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-java</artifactId>
    <version>4.21.0</version>
    <!--The version varies based on it's current version-->
</dependency>

您可以访问以下站点查看可用的最新版本:Selenium 依赖项存储库

此外,在模块信息页面中,确保添加 selenium 作为必需的依赖项。

© www.soinside.com 2019 - 2024. All rights reserved.