【问题标题】:How to get more information about 'feature' flag warning?如何获取有关“功能”标志警告的更多信息?
【发布时间】:2013-03-10 03:31:48
【问题描述】:

使用 Play2 编译应用程序时,有时会在我的终端上显示以下消息:

[info] 将 1 个 Scala 源代码编译到 ~/target/scala-2.10/classes...
[警告] 有 1 个功能警告;使用 -feature 重新运行以了解详细信息
[警告] 发现一个警告
[成功] 1s编译完成

如何获得有关这些警告的更多信息?它必须是 sbt 的一个选项,但我不知道在哪里搜索......

【问题讨论】:

  • 这是 SIP-18 docs.scala-lang.org/sips/pending/… 的效果,看到警告在你的 sbt 定义中添加这个标志:scalacOptions ++= Seq(... "-feature")
  • 确实!那行得通,谢谢!你介意提出一个答案吗?
  • @i.am.michiel 您在 PlayFramework 2 中添加了哪个文件?我正在尝试将 scalacOptions ++= Seq("-unchecked", "-deprecation","-feature") 添加到 Build.scala 但它似乎没有任何效果。
  • 我添加到 build.sbt,但我使用的是 Play 2.3.x
  • @UmutBenzer 我也有同样的情况,如果它与“build.sbt”中的其他标志一起使用则无效。如果我为它自己做了一行(使用 ++=),我会收到警告。很奇怪。

标签: java scala playframework-2.0 sbt scala-2.10


【解决方案1】:

要查看您需要在 sbt 构建定义文件中添加“功能”标志的确切消息:

scalacOptions ++= Seq("-feature")

为什么? Scala 2.10 不仅引入了新特性,还重新调整了旧特性——一些最强大的 scala 特性被隐藏了,因为它们应该以极大的责任感来使用:sometimes they were used mistakingly。这就是出现SIP-18 的原因。从现在开始,要访问动态、高级类型、存在类型和其他一些东西,您必须显式启用它们。

【讨论】:

  • 如果您想暂时在命令行上执行此操作,请使用set scalacOptions += "-feature"
猜你喜欢
  • 1970-01-01
  • 2020-04-24
  • 2016-01-29
  • 1970-01-01
  • 2021-02-21
  • 2017-06-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多