scala - -Ywarn-unused-import 在 Play 路线文件上触发

标签 scala playframework sbt scalac

我希望能够使用 -Xfatal-warnings-Ywarn-unused-import,问题是编译器在文件上触发错误包含我的应用程序的 Play 路线:

[error] /path/to/app/conf/routes: Unused import
[error] /path/to/app/conf/routes: Unused import
[error] /path/to/app/conf/routes:1: Unused import
[error] GET        /document/:id        my.app.controllers.MyController.getById(id: Int)

其他路线也是如此。

是否可以告诉 scalac 忽略文件?

Scala 版本为 2.11.8

最佳答案

我已经为 Play 2.8.11 提出了 Scala 2.13.7 的工作解决方案(不需要任何插件)。查看这些示例并根据您的需求进行调整:

scalacOptions ++= Seq(
    "-Wconf:cat=unused-imports&site=.*views.html.*:s", // Silence import warnings in Play html files
    "-Wconf:cat=unused-imports&site=<empty>:s", // Silence import warnings on Play `routes` files
    "-Wconf:cat=unused-imports&site=router:s", // Silence import warnings on Play `routes` files
    "-Wconf:cat=unused-imports&site=v1:s", // Silence import warnings on Play `v1.routes` files
    "-Wconf:cat=unused-imports&site=v2:s", // Silence import warnings on Play `v2.routes` files
    "-Wconf:cat=unused-imports&site=views.v1:s", // Silence import warnings on Play `views.v1.routes` files
    "-Wconf:cat=deprecation&site=controllers\\.v1.*&origin=scala.util.Either.right:s", // Silence deprecations in generated Controller classes
    "-Wconf:cat=deprecation&site=.*v1.Routes.*&origin=scala.util.Either.right:s"
  ) // Silence deprecations in generated Controller classes

如果您想了解更多,请点击 look on this documentation并在编译器消息输出中添加详细信息

scalacOptions += "-Wconf:any:wv",

专业提示:仅在 CI 内未使用的编译失败

scalacOptions ++= {
  // Mark unused errors as info for local development (due to -Werror usage)
  if (insideCI.value) Seq.empty else Seq("-Wconf:cat=unused:i")
},

关于scala - -Ywarn-unused-import 在 Play 路线文件上触发,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37413032/

相关文章:

scala - 如何将一个 SBT 项目添加为另一个项目的依赖项?

java - Playframework 2.4.3 迁移到 2.7.0 时出现的问题

python - 什么相当于 scala.util.Try 在 pyspark 中?

scala - 使用 Play 框架设置 Akka 集群

playframework - Play 无法解析 org.alfresco :alfresco-web-service-client dependency

scala - 如何在 play 2.4 上安装 ReactiveMongo?

scala - SBT 如何运行 InputTask

scala - 如何节流 Spark Streaming?

scala - 为什么当 scala.language.implicitConversions 不是最后一次导入时发出警告?

java - Eclipse 使用太多内存,最佳配置是什么?