1

在尝试在 Scala 项目中使用千分尺时,我收到了以下警告:

[错误] 解析 /Users/vargasmontero/.ivy2/cache/io.micrometer/micrometer-core/jars/micrometer-core-1.0.4.jar(io/micrometer/core/lang/Nullable.class) 中的注释时,在枚举中找不到 MAYBE。

它是在 1.0.0-rc.8 中引入的,但我在 github 中看不到该版本。

  • SBT 1.1.1
  • 斯卡拉 2.12.5
  • 千分尺 1.0.4
4

2 回答 2

1

从 Scala 2.13.2 开始,可以使用可配置的警告来抑制这种滋扰

ThisBuild / scalacOptions ++=
  Seq(
    //<other options omitted>

    // warnings
    "-Wconf:msg=While parsing annotations in:silent"
  )
于 2020-06-17T23:37:25.443 回答
0

我对 Scala 没有太多的专业知识,但稍微研究了一下,Scala 在用于返回类型时似乎并没有忽略缺少的元注释类(在参数上使用时似乎没问题),这与 Java 不同。Micrometer 的@Nullable实现与 Spring 框架的实现相同。因此,如果您StringUtils.quoteIfString()从 Spring 框架中使用,您将看到相同的警告。

这是一个警告,而不是错误,因此您可以简单地忽略它,或者如果它困扰您,您可以添加以下可选依赖项作为解决方法:

libraryDependencies += "com.google.code.findbugs" % "jsr305" % "3.0.2" % Optional

Scala 开发人员可能会给您更好的建议。

FTR 这是从https://github.com/micrometer-metrics/micrometer/issues/1133#issuecomment-452434205复制的。


更新

我错过了“错误”部分。您似乎有“-Xfatal-warnings”编译器选项。

于 2019-01-08T20:11:07.903 回答