我在尝试执行时遇到了这些错误:
mvn clean verify -Dwebdriver.driver=chrome
Failed to execute goal org.apache.maven.plugins:maven-enforcer-plugin:1.4:enforce (verify) on project serenity-jbehave-showcase: org.apache.maven.plugins.enforcer.DependencyConvergence failed with message:
[ERROR] Failed while enforcing releasability the error(s) are [
[ERROR] Dependency convergence error for com.google.guava:guava:19.0 paths to dependency are:
[ERROR] +-net.serenitybdd.showcase:serenity-jbehave-showcase:0.0.1-SNAPSHOT
[ERROR] +-net.serenity-bdd:serenity-core:1.2.2
[ERROR] +-com.google.guava:guava:19.0
[ERROR] and
[ERROR] +-net.serenitybdd.showcase:serenity-jbehave-showcase:0.0.1-SNAPSHOT
[ERROR] +-net.serenity-bdd:serenity-core:1.2.2
[ERROR] +-net.serenity-bdd:serenity-report-resources:1.2.2
[ERROR] +-com.google.guava:guava:19.0
[ERROR] and
等。
我需要在pom.xml中更改哪些内容才能使用mvn clean verify -Dwebdriver.driver=chrome
运行我的测试?
我的pom.xml是
答案 0 :(得分:0)
"等等"你引用可能有一些更相关的信息。不过,看看你拥有的东西,看起来你对guava
有多个依赖关系,而且并非所有依赖关系都是同一个版本。 (请注意,其中一些可能是传递依赖项:那些被另一个依赖项作为依赖项包含的依赖项。)
maven-enforcer-plugin
检测到单个库何时指定了多个版本,并且它会破坏构建。但是,如果您只是尝试运行快速测试,则可以添加-Denforcer.skip=true
。 不建议长期使用,但仅限于运行单项测试。
长期来看,您最终需要使用Maven的dependencyManagement
来强制使用特定版本的Guava,从而覆盖版本不匹配。