我在我的项目中使用scalafmt插件,我也使用Intellj 的 scalafmt 插件来格式化我的 Scala 代码。通常我使用热键或运行sbt scalafmt
格式化。
sbt.version=1.0.3
addSbtPlugin("com.geirsson" % "sbt-scalafmt" % "1.3.0")
问题: 任何建议如何在编译时自动使用 scalafmt 格式化代码?
我在我的项目中使用scalafmt插件,我也使用Intellj 的 scalafmt 插件来格式化我的 Scala 代码。通常我使用热键或运行sbt scalafmt
格式化。
sbt.version=1.0.3
addSbtPlugin("com.geirsson" % "sbt-scalafmt" % "1.3.0")
问题: 任何建议如何在编译时自动使用 scalafmt 格式化代码?
更新:只需更新插件版本并使用
scalafmtOnCompile := true
下面的答案已经过时,它建议使用替代插件,但现在换一种方式,官方是最新的并且开箱即用地支持此功能。
从您使用的插件的 scalafmt安装说明中:
sbt 插件不提供编译设置的重新格式化。这个要点显示了一个 DIY 插件,可以在编译时重新格式化。YMMV。
为什么 sbt 插件中不包含该要点?见#597。
我建议您改用neo-sbt-scalafmt。它通常更具可配置性和更好的维护(放弃了其他插件,请参阅上面链接的问题)。使用此插件,您可以通过简单的方式打开编译格式
scalafmtOnCompile := true
有关更多选项,请参阅文档。