斯卡拉SBT:如何“重新运行 – 弃用”

当我编译Scala代码时,通过运行sbt compile , SBT说:

 $ sbt compile ... [warn] there were 5 deprecation warnings; re-run with -deprecation for details ... 

我怎么做? (从SBT内?)

如果你不想改变你的build.sbt

 $ sbt > set scalacOptions in ThisBuild ++= Seq("-unchecked", "-deprecation") > compile > exit 

编辑:添加"-unchecked"in ThisBuild每个评论。

 scalacOptions := Seq("-unchecked", "-deprecation") 

将此设置添加到您的build.sbt,并且,如果您有多模块项目,则将其添加到每个项目的设置。

随着时代的stream逝,新的解决scheme出现 所以,现在你可以重新运行scala编译器而不用发出整个项目重build。

你需要安装ensime-sbt插件 :

 addSbtPlugin("org.ensime" % "sbt-ensime" % "1.0.0") 

之后,您可以使用ensimeCompileOnly任务来编译单个文件。 SBT允许每个任务的设置configuration,所以你只能改变这个任务:

 set scalacOptions in (Compile, EnsimeKeys.ensimeCompileOnly) += "-deprecation" ensimeCompileOnly src/main/scala/MyFile.scala