Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/348.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何忽略或修复重复类警告?_Java_Maven_Qulice - Fatal编程技术网

Java 如何忽略或修复重复类警告?

Java 如何忽略或修复重复类警告?,java,maven,qulice,Java,Maven,Qulice,我正在尝试使用代码质量控制工具 当我对我的项目运行qulice:check时,我得到以下错误: [WARNING] Found duplicate and different classes in [junit:junit:4.8.2,org.mockito:mockito-all:1.9.5] : [WARNING] org.hamcrest.BaseDescription [WARNING] org.hamcrest.BaseMatcher [WARNING] org.hamcr

我正在尝试使用代码质量控制工具

当我对我的项目运行
qulice:check
时,我得到以下错误:

[WARNING] Found duplicate and different classes in [junit:junit:4.8.2,org.mockito:mockito-all:1.9.5] :
[WARNING]   org.hamcrest.BaseDescription
[WARNING]   org.hamcrest.BaseMatcher
[WARNING]   org.hamcrest.CoreMatchers
[WARNING]   org.hamcrest.Description
[WARNING]   org.hamcrest.Factory
[WARNING]   org.hamcrest.Matcher
[WARNING]   org.hamcrest.SelfDescribing
[WARNING]   org.hamcrest.StringDescription
[WARNING]   org.hamcrest.core.AllOf
[WARNING]   org.hamcrest.core.AnyOf
[WARNING]   org.hamcrest.core.DescribedAs
[WARNING]   org.hamcrest.core.Is
[WARNING]   org.hamcrest.core.IsAnything
[WARNING]   org.hamcrest.core.IsEqual
[WARNING]   org.hamcrest.core.IsInstanceOf
[WARNING]   org.hamcrest.core.IsNot
[WARNING]   org.hamcrest.core.IsNull
[WARNING]   org.hamcrest.core.IsSame
[WARNING]   org.hamcrest.internal.ArrayIterator
[WARNING]   org.hamcrest.internal.SelfDescribingValue
[WARNING]   org.hamcrest.internal.SelfDescribingValueIterator
我试图禁用这些检查,但根据,此功能尚未实现


为了消除这些错误,我可以做些什么?

您可以做的最好的事情是:

<plugin>
  <groupId>com.qulice</groupId>
  <artifactId>qulice-maven-plugin</artifactId>
  <configuration>
    <excludes>
      <exclude>duplicatefinder:.*</exclude>
    </excludes>
  </configuration>
</plugin>

com.qulice
比如说鲁尔托。您基本上禁用了整个重复查找器检查。目前没有办法只禁用一个工件


在您的特定情况下,您不需要禁用重复查找器。只需使用JUnit、Mockito和Hamcrest的正确版本,看看在jcabi parent中是如何实现的。

我不知道Qulice,但您在这里向我们展示的内容看起来像是警告,而不是错误。此外,当警告声明“重复”类在junit和mockito中时,我不知道排除
org.hamcrest:hamcrest core
应该有什么帮助。我依赖junit和mockito。让我们假设它们都依赖于
org.hamcrest:hamcrest-core
。现在
org.hamcrest:hamcrest核心包含两次(一次用于JUnit,一次用于Mockito)。如果我将
org.hamcrest:hamcrest core
排除在JUnit的依赖项中(但不包括在Mockito的依赖项中),它将只包含一个,并且理论上可以防止警告。看看这个。我假设这些JAR也在测试范围内?@HimanshuBhardwaj这是一个不同的警告(由不同的插件生成),我通过排除一些依赖项来修复。正如问题文本中已经提到的,排除Hamcrest依赖项并不能修复这些警告。