java - Selenium Java WebDriverWait - 无法访问 java.util.function
问题描述
当我在我的 Java 项目中使用 WebDriverWait 时,IDEA 的响应是:
Error:(17, 9) java: cannot access java.util.function.Function
class file for java.util.function.Function not found
我在一个类似的项目中使用这个命令,我没有问题。
@Test
public void testLogin () {
new WebDriverWait(driver,20)
.until(ExpectedConditions.visibilityOfElementLocated(By.xpath("//input[@type='email']")));
driver.findElement(By.name("email")).clear();
driver.findElement(By.name("email")).sendKeys(Email);
driver.findElement(By.name("password")).clear();
driver.findElement(By.name("password")).sendKeys(Password);
driver.findElement(By.name("submit")).click();
解决方案
有点不清楚你的项目是如何构建的,如果你有:
- 下载了标准的Seleniu-Java客户端 jars 或
- 使用Maven或Gradle
可能,您正在使用Maven,并且根据Error:(57, 38) java: The type java.util.function.Function 无法解析。它是从所需的 .class 文件中间接引用的,此问题是由在pom.xml中将Java 1.7指定为目标版本引起的。
java.util.function.Function
随Java 1.8添加
解决方案:
- 更新到JDK v1.8
如果使用Maven,请更新:
<properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties>
如果使用Gradle,请将以下内容添加到您的
build.gradle
文件中plugins { id 'java' } sourceCompatibility = '1.8' targetCompatibility = '1.8' version = '1.2.1'
通过您的IDE(从Project -> Clean ...)清理您的项目工作区,并仅使用所需的依赖项重建您的项目。
推荐阅读
- javascript - `style` 属性需要从样式属性到值的映射,而不是字符串
- sql - 简化查询以用作 winform rdlc 报告中的数据集
- components - 将提供的接口链接到 Sparx Enterprise Architect (EA) 中的定义
- r - R中的高效数据表/框架/小标题/其他聚合
- hadoop - 为什么我可以在不启动 Hadoop/HDFS 的情况下使用 HBase?
- azure - 需要使用 API 调用删除 networkIpConfigurations
- angular - 使用 Angular 在 json 对象中创建一个单选组
- java - 我们如何在 spring data jpa 中实现动态查询?
- javascript - `ng-class` 的一次性绑定语法,具有数组语法和多个类
- ubuntu - 在 catkin_make 期间调用“make -j2”失败,未定义的引用