Solução limpa para entrar no console REPL no meio da execução do programa
Existe alguma solução de trabalho para entrar no console REPL com o Scala 2.10?
Isso é principalmente para fins de depuração - quero fazer uma pausa no meio da execução e ter um console REPL onde possa inspecionar valores e testar a lógica do programa usando expressões complexas dentro do meu programa no estado atual de execução. Aqueles que programaram em Ruby podem conhecer funções semelhantes: obinding.pry
.
AFAIK, Scala 2.9 e abaixo costumava terbreakIf
mas foi removido das versões posteriores. UsandoILoop
parece ser o novo caminho, mas introduziu problemas devido asbt
não adicionando scala-library ao caminho de classe.
Várias soluções, comoesta eesta parece oferecer uma boa solução alternativa, mas o que quero dizer é que deve haver uma solução em que não precise passar horas ou até dias apenas para fazer o REPL funcionar.
Em resumo, há muito mais etapas envolvidas - isso contrasta combinding.pry
que é apenas uma linha de código sem clichê adicional.
Não sei se há um problema introduzido na execução do programa como uma tarefa sbt, e não na execução direta do programa, mas, para fins de desenvolvimento, atualmente estou executando e testando meu programa usando a tarefa sbt.