Чистое решение для сброса в консоль REPL в середине выполнения программы

Есть ли какое-нибудь рабочее решение для добавления в консоль REPL с Scala 2.10?

Это главным образом для целей отладки - я хочу сделать паузу в середине выполнения и иметь консоль REPL, где я могу проверять значения и проверять логику программы, используя сложные выражения в моей программе в текущем состоянии выполнения. Те, кто программировал на Ruby, могут знать похожую функцию:binding.pry.

AFAIK, Scala 2.9 и младше, чтобы иметьbreakIf но он был удален из более поздних версий. С помощьюILoop кажется, новый путь, но возникли проблемы из-заsbt не добавлять scala-библиотеку в путь к классам.

Несколько решений, таких какэтот а такжеэтот похоже, предлагает хороший обходной путь, но моя точка зрения заключается в том, что должно быть решение, при котором мне не нужно тратить часы или даже дни, чтобы заставить REPL работать.

Короче говоря, здесь задействовано намного больше стандартных шагов - это в отличие отbinding.pry это просто строка кода без дополнительного шаблона.

Я не знаю, возникла ли проблема при выполнении программы как задачи sbt, а не при непосредственном запуске исполняемого файла программы, но в целях разработки я в данный момент запускаю и тестирую свою программу с помощью задачи sbt.

Ответы на вопрос(2)

Ваш ответ на вопрос