Отладка и вход в систему в лифте с использованием SBT - PullRequest
5 голосов
/ 26 июня 2011

Я пытаюсь заставить базовую запись и отладку работать в Lift, используя SBT.Я использую Eclipse в качестве редактора, но делаю всю компиляцию с SBT.Кто-нибудь может подсказать, как напечатать операторы отладки / протоколирование на консоль SBT?

Ответы [ 2 ]

5 голосов
/ 26 июня 2011

Если вы хотите вести журнал с Logback, вам нужно создать базовый XML-файл с именем src/main/resources/props/default.logback.xml (имя файла может отличаться, чтобы отражать среды разработки и производства, но мы будем упрощать его).

В этом файле базовая конфигурация, которая будет регистрироваться на консоли, выглядит следующим образом:

<configuration>
  <appender name="STDOUT" class="ch.qos.logback.core.ConsoleAppender">
    <encoder>
      <pattern>%d{HH:mm:ss.SSS} [%thread] %-5level %logger{36} - %msg%n</pattern>
    </encoder>
  </appender>

  <root level="debug">
    <appender-ref ref="STDOUT" />
  </root>
</configuration>

(Больше примеров можно найти в Руководстве по возврату .)

Далее вам нужно добавить зависимость

"ch.qos.logback" % "logback-classic" % "0.9.26"

в вашу конфигурацию sbt.

Наконец, если вы хотите выйти из класса, смешайте в черту Logger и вы получите все методы debug, info, warn,… в области видимости.

class SomeClass extends SomeOtherClass with Logger {
    debug("Class initialised.")
}

Или, альтернативно, добавьте Loggable, который не загрязняет ваше пространство имен и обеспечивает только прокси-метод logger.

class SomeClass extends SomeOtherClass with Loggable {
    logger.debug("Class initialised.")
}

Для получения дополнительной информации посмотрите Lift wiki .

1 голос
/ 07 июля 2011

В sbt есть команда console-quick, которая загружает среду веб-сайта в вашу командную строку. Это не инструмент отладки в реальном времени, имеющий точку останова, пошаговое выполнение, но вы можете вызывать методы в командной строке, чтобы увидеть реальные результаты, которые иногда очень полезны.

...