Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/16.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
scala实际上抑制了编译器警告_Scala_Warnings_Compiler Warnings_Scalac - Fatal编程技术网

scala实际上抑制了编译器警告

scala实际上抑制了编译器警告,scala,warnings,compiler-warnings,scalac,Scala,Warnings,Compiler Warnings,Scalac,如何实际抑制编译器警告: discarded non-Unit value [warn] kryo.register(classOf[Foo]) 的建议不适用,因为问题发生在我自己的代码之外 编辑 编译器选项包括: "-target:jvm-1.8", "-encoding", "UTF-8", "-feature", "-unchecked", "-deprecation", "-Xfuture", "-Xlint:missing-interpolator

如何实际抑制编译器警告:

discarded non-Unit value
[warn]     kryo.register(classOf[Foo])
的建议不适用,因为问题发生在我自己的代码之外

编辑 编译器选项包括:

"-target:jvm-1.8",
  "-encoding",
  "UTF-8",
  "-feature",
  "-unchecked",
  "-deprecation",
  "-Xfuture",
  "-Xlint:missing-interpolator",
  "-Yno-adapted-args",
  "-Ywarn-dead-code",
  "-Ywarn-numeric-widen",
  "-Ywarn-value-discard",
  "-Ywarn-dead-code",
  "-Ywarn-unused"
这将警告
“-Ywarn value discard”,

您只需从调用
kryo.register的块显式返回
Unit
。如果没有块,请将其包装为一个:

{
  kryo.register(classOf[Foo])
  kryo.register(classOf[Bar])
  () // I know what I'm doing
}
关于一般的警告抑制 不幸的是,Scala没有内置的抑制系统。人,但这不是微不足道的成就。目前有两种选择:

  • 完全禁用警告
  • 使用编译器插件:

  • 如果您指定了所使用的编译器/linter选项,可能会有所帮助,但我会尝试
    val=kryo.register(classOf[Foo])
    您的建议不起作用,因为对函数的多次调用
    kryo.register(classOf[Foo])kryo.register(classOf[Bar])
    将失败。