首页 > 解决方案 > 不存在类型变量 V 的实例,因此 ExpectedCondition符合功能

问题描述

抛出此编译时错误:

No instance(s) of type variable(s) V exist so that ExpectedCondition<Boolean> 
conforms to Function<? super WebDriver, V>

对于此代码:

ExpectedCondition<Boolean> expectation = new
    ExpectedCondition<Boolean>() {
        public Boolean apply(WebDriver driver) {
            return ((JavascriptExecutor) driver).executeScript("return window.value").(true);
        }
    };
new WebDriverWait(driver, timeout)
    .until(expectation);

鉴于,ExpectedCondition符合conforms to Function<? super WebDriver, V>

我对这个错误感到困惑,任何想法这里可能有什么问题?

标签: javaseleniumselenium-webdriver

解决方案


问题是依赖项中有一个 Guava 版本 18.0,然后将其更改回版本 22.0 解决了问题:

    <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>22.0</version>
    </dependency>

推荐阅读