我的Scala 2.9.1项目现在发出176个警告,几乎完全像这个:
[warn] Not a simple type:
[warn] Type: _29.type#source.type forSome { type _29.type <: Ontology.this.TruncationFunctor } (class class scala.tools.nsc.symtab.Types$ExistentialType)
[warn] Transformed: class xsbti.api.Existential
(起初较少,但我的编码风格似乎引起了这种警告,因为我越来越多。)
任何人都可以向我解释这个警告意味着什么,以及我该如何避免它?编译器不会发出任何行号,所以我甚至不确定它究竟来自哪里。
答案 0 :(得分:6)
这似乎特定于 sbt ,其中关于类型的假设不正确并发出警告。当sbt需要从源文件中提取一些信息时,似乎这段代码就会运行。
请参阅https://github.com/harrah/xsbt/blob/0.11/compile/interface/API.scala#L105
我的猜测是存在类型和类型投影的组合导致这种情况。如果您可以缩小范围,可能需要将此报告为sbt问题。
答案 1 :(得分:1)
这是一个SBT问题:https://github.com/sbt/sbt/issues/830。 此消息的级别已从警告更改为日志0.13.6。
另请参阅scala-internals小组中的相关讨论:https://groups.google.com/forum/#!msg/scala-internals/ANcaI6dVYPw/2Gt5z_S3Gc0J