scalafmt: получение значимых сообщений об ошибках
Я использую команду "scalafmt", чтобы убедиться, что в моем коде Scala нет ошибок форматирования. Это сообщение об ошибке продолжает выходить из строя:
Looking for unformatted files... (98.35 %, 238 / 242)
error: --test failed
Это последние две строчки. Других сообщений об ошибках в журнале нет. Могу ли я использовать конфигурацию, которая даст мне больше информации об этой ошибке?
2 ответа
По умолчанию ошибки Scalafmt отправляются в System.err. Расширьте org.scalafmt.interfaces.ScalafmtReporter, чтобы настроить отчеты об ошибках для обработки ошибок синтаксического анализа и конфигурации.
class ScalafmtErrReport(out: PrintStream) extends ScalafmtReporter {
override def error(file: Path, e: Throwable): Unit = {
out.print(s"error: $file: ")
trimStacktrace(e)
e.printStackTrace(out)
}
override def error(path: Path, message: String): Unit = {
out.println(s"error: $path: $message")
}
override def error(file: Path, message: String, e: Throwable): Unit = {
error(file, ScalafmtException(message, e))
}
}
проверьте: https://scalameta.org/scalafmt/docs/installation.html
Если ты бежишьscalafmt --test
из командной строки он выдаст вам разницу между тем, что у вас есть, и тем, что, по его мнению, у вас должно быть. К сожалению, он показывает только разницу, а не то, какое правило указывает на изменение.