当我通过运行sbt compile来编译Scala代码时,SBT说:
$ sbt compile
...
[warn] there were 5 deprecation warnings; re-run with -deprecation for details
...我该怎么做?(从SBT内部?)
发布于 2012-03-06 14:11:26
sbt外壳
在sbt shell中(如果您不想更改build.sbt):
$ sbt
> set ThisBuild/scalacOptions ++= Seq("-unchecked", "-deprecation")
> compile
> exit由于使用了in ThisBuild,set也会将这些设置应用于所有子项目。
命令行
您还可以在命令行上将上述内容作为单个命令运行。
sbt '; set ThisBuild/scalacOptions ++= Seq("-unchecked", "-deprecation") ; compile' 诀窍是使用; (分号)分隔命令,使用' (滴答)将所有;-separated命令作为单个参数包含到sbt中。
sbt < 1.x
使用scalacOptions in ThisBuild代替ThisBuild/scalacOptions
发布于 2016-07-06 01:37:39
scalacOptions := Seq("-unchecked", "-deprecation")将此设置添加到build.sbt中,如果您有一个多模块项目,则将其添加到每个项目的设置中。
发布于 2016-09-14 03:07:56
随着时间的推移,出现了新的解决方案。因此,现在您可以重新运行scala编译器,而无需执行整个项目rebuild。
您需要安装ensime-sbt plugin:
addSbtPlugin("org.ensime" % "sbt-ensime" % "1.0.0")之后,您可以使用ensimeCompileOnly任务来编译单个文件。SBT允许按任务进行设置配置,因此您只能针对该任务进行更改:
set scalacOptions in (Compile, EnsimeKeys.ensimeCompileOnly) += "-deprecation"
ensimeCompileOnly src/main/scala/MyFile.scalahttps://stackoverflow.com/questions/9578521
复制相似问题