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из командной строки он выдаст вам разницу между тем, что у вас есть, и тем, что, по его мнению, у вас должно быть. К сожалению, он показывает только разницу, а не то, какое правило указывает на изменение.

Другие вопросы по тегам