Scala工具删除所有未使用的代码

pat*_*rit 13 static-analysis scala sbt unused-variables scalameta

我写的Scala插件的编辑,我用这将突出显示所有未使用的代码路径(可能是未使用defs,vals,classesimplicits),并为用户提供一个选项,以将其拔出了的.scala文件.

我怎样才能做到这一点?为了简化问题,我们假设我们只有一个单一的根级别.scala与库或任何其他代码的文件没有外部的依赖文件.

理想情况下,我希望这是一个SBT插件,给定一个这样的Foo.scala文件,将吐出Foo_min.Scala文件,删除所有未使用的代码.

Gui*_*ssé 1

Scalafix 对此进行了重写:RemoveUnusedImports

按照这些说明运行它:https://scalacenter.github.io/scalafix/#Installation