scala.tools.nsc
API был полностью изменен с 2.10 на 2.11. Например, Interpreter
больше нет.
Я пытаюсь создать на Scala сайт, аналогичный http://codingbat.com, поэтому мне нужна возможность компилировать и запускать код, предоставленный пользователем, во время работы моей программы.
Кто-нибудь знает что-то, что объясняет, как использовать новый API в любом месте? (Мне не удалось погуглить то, что я считал разумными условиями поиска.) Если нет, может ли кто-нибудь, кто что-то знает о новом API, предоставить небольшой рабочий пример, который позволит вам скомпилировать код, а затем получить результат его выполнения?
ОБНОВЛЕНИЕ 2.11.0-M5, кажется, нарушает поддержку Script Engine, но я вернулся к 2.11.0-M4 и могу использовать ScriptEngineManager
для получения интерпретатора. Странно то, что тип scala.tools.nsc.interpreter.IMain
. Этот пакет и класс не появляются в 2.11.0-M4 Scaladocs, поэтому мне интересно, переместились ли они из артефакта компилятора куда-то еще, или это просто недосмотр в производстве Scaladoc, и они все еще должны быть там .