org.apache.commons.io.FilenameUtils和Selenium 3.6.0

时间:2017-10-03 07:59:02

标签: java selenium

我在selenium 3.5.3中使用了org.apache.commons.io.FilenameUtils并且一切都很棒。 当我将Selenium版本更改为3.6.0时,在我的代码行中

import org.apache.commons.io.FilenameUtils;

显示为灰色(无效),我有错误:

Error: java: package org.apache.commons.io does not exist
Error: java: cannot find symbol
symbol:   variable FilenameUtils

有什么问题?这是Selenium 3.6.0中的错误还是应该检查其他内容?

3 个答案:

答案 0 :(得分:1)

您依赖于传递依赖,因此Selenium 3.5.3(显然)依赖commons-io,而Selenium 3.6.0则没有。

尽管可以在模块中使用传递依赖项,但依赖传递依赖项并不是一个好主意。对于您明确使用的每个库,您应该在Maven POM中具有明确的依赖关系(您现在添加的是 - 正确 - 解决方案)。

答案 1 :(得分:0)

当我在POM.xml文件中添加依赖项时,一切正常都可以正常工作:

<!-- https://mvnrepository.com/artifact/commons-io/commons-io -->
<dependency>
    <groupId>commons-io</groupId>
    <artifactId>commons-io</artifactId>
    <version>2.5</version>
</dependency>

答案 2 :(得分:0)

这里的问题相同。 3.6 selenium中缺少Apache commons IO包。你可以在任何以前版本的selenium中找到丢失的jar文件。只需将该jar文件添加到构建路径中即可正常工作。