Как получить полную трассировку стека в SBT 0.10.0? - PullRequest
18 голосов
/ 26 июня 2011

Я использую SBT 0.10.0 для компиляции комбинации файлов Java и Scala. Когда я запускаю программу через sbt run, она возвращает ненулевую ошибку, но не показывает мне трассировку стека - она ​​просто молча терпит неудачу с загадочным сообщением:

Nonzero exit code: 1

Если я запускаю программу через scala командную строку, она показывает трассировку стека.

Есть ли способ заставить SBT распечатать всю трассировку стека?

Ответы [ 3 ]

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

Выполните sbt, чтобы войти в оболочку sbt, затем попробуйте run, затем last run.

last <command> выводит все, что выдавала команда (все уровни журнала, включая [debug]) и трассировки стека.

5 голосов
/ 08 сентября 2011

last run, как показано здесь , это путь, но он может раздражать, если вы делаете что-то вроде запуска в цикле с ~ run и просто хотите увидеть исключения вашего приложения , Вы можете указать SBT включить автоматическую печать трассировок стека для такой задачи:

traceLevel in run := 0

Дополнительная ссылка здесь .

0 голосов
/ 16 января 2014

В SBT 0.13.x трассировка стека распечатана, поэтому вопрос, возможно, стал неактуальным.

jacek:~/sandbox/so/sbt-0.13.1
$ sbt run
[info] Loading global plugins from /Users/jacek/.sbt/0.13/plugins
[info] Loading project definition from /Users/jacek/sandbox/so/sbt-0.13.1/project
[info] Set current project to sbt-0-13-1 (in build file:/Users/jacek/sandbox/so/sbt-0.13.1/)
[info] Compiling 1 Scala source to /Users/jacek/sandbox/so/sbt-0.13.1/target/scala-2.10/classes...
[info] Running MyApp
[error] (run-main-0) java.lang.Exception: exception
java.lang.Exception: exception
    at MyApp$delayedInit$body.apply(Hello.scala:2)
    at scala.Function0$class.apply$mcV$sp(Function0.scala:40)
    at scala.runtime.AbstractFunction0.apply$mcV$sp(AbstractFunction0.scala:12)
    at scala.App$$anonfun$main$1.apply(App.scala:71)
    at scala.App$$anonfun$main$1.apply(App.scala:71)
    at scala.collection.immutable.List.foreach(List.scala:318)
    at scala.collection.generic.TraversableForwarder$class.foreach(TraversableForwarder.scala:32)
    at scala.App$class.main(App.scala:71)
    at MyApp$.main(Hello.scala:1)
    at MyApp.main(Hello.scala)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
[trace] Stack trace suppressed: run last compile:run for the full output.
java.lang.RuntimeException: Nonzero exit code: 1
    at scala.sys.package$.error(package.scala:27)
[trace] Stack trace suppressed: run last compile:run for the full output.
[error] (compile:run) Nonzero exit code: 1
[error] Total time: 10 s, completed Jan 16, 2014 12:37:25 AM
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...