首页 > 解决方案 > 构建错误:找不到 org.openqa.selenium.internal.Locatable 的类文件

问题描述

我正在使用 Selenium 和 Maven 在 Eclipse 中构建项目,但出现构建错误:找不到 org.openqa.selenium.internal.Locatable 的类文件。

我正在使用Selenium-Server-Standalone 3.141.59,我注意到它在...下有 Locatable 类

org.openqa.selenium.**interactions**.Locatable 

代替...

org.openqa.selenium.**internal**.Locatable.

这是一个完全不同的班级吗?

如何让 Eclipse 识别该类存在?

请找到以下是我的相关依赖项Pom.xml

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-java</artifactId>
        <version>3.141.59</version>
    </dependency>

    <dependency>
        <groupId>org.seleniumhq.selenium</groupId>
        <artifactId>selenium-server</artifactId>
        <version>3.141.59</version>
    </dependency> 

    <dependency>
        <groupId>com.codeborne</groupId>
        <artifactId>selenide</artifactId>
        <version>2.3</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/com.codeborne/phantomjsdriver -->
    <dependency>
        <groupId>com.codeborne</groupId>
        <artifactId>phantomjsdriver</artifactId>
        <version>1.3.0</version>
    </dependency>               

    <!-- https://mvnrepository.com/artifact/junit/junit -->
    <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/log4j/log4j -->
    <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>1.2.17</version>
    </dependency>

标签: javamavenselenium

解决方案


Selenium Server从您的依赖项中删除。

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-server</artifactId>
    <version>3.141.59</version>
</dependency>

如果我没记错的话,您现在需要 WebDriver,它包含在Selenium Java.

还包括Selenium API

<dependency>
    <groupId>org.seleniumhq.selenium</groupId>
    <artifactId>selenium-api</artifactId>
    <version>3.141.59</version>
</dependency>

并更新selenidephantomjsdriver

<dependency>
    <groupId>com.codeborne</groupId>
    <artifactId>selenide</artifactId>
    <version>5.1.0</version>
</dependency>

<dependency>
    <groupId>com.codeborne</groupId>
    <artifactId>phantomjsdriver</artifactId>
    <version>1.4.4</version>
</dependency>

selenide您正在引入的当前版本是2.3,它将引入selenium-java 2.33.0.

phantomjsdriver您正在引入的当前版本是1.3.0,它将引入selenium-java 2.53.0.

你需要selenide 5.1.0并且phantomjsdriver 1.4.4


推荐阅读