Я новичок в работе с Groovy.Я привык к Python и Clojure, где я мог делать большую часть своего кодирования в REPL.Я пытаюсь сделать то же самое с Groovy, но я не уверен, что нашел способ, который подходит.
Плагин Groovy Eclipse предоставляет несколько интерактивных режимов, но ни один из них мне не подходит.
Первый способ загружает скрипт Groovy в консоль Groovy.Консоль кажется мне слабым редактором без каких-либо удобств Eclipse, таких как завершение табуляции.Есть несколько хороших возможностей для самоанализа, но на самом деле это не похоже на интерактивную разработку.
Второй способ запускает Groovy Shell на вкладке консоли Eclipse.Это дает мне REPL, который я хочу, но в Eclipse он выглядит очень неуклюжим.Там нет завершения вкладки.И я должен ввести «go» после ввода кода, который я хочу оценить.
Плагин Groovy Eclipse не разрезал его, но оболочка Groovy, включенная в отдельный дистрибутив Groovy, прекрасно работает.Он выполняет завершение табуляции (кроме имен классов) и оценивает код сразу после его ввода. Это тот, который задокументировал здесь .
Я немного глубже вник в различия междуREPL, который запускается в Eclipse и тот, который запускается из автономного дистрибутива с использованием сценария groovysh .Один из Eclipse является экземпляром 'groovy.ui.InteractiveShell' , а другой из сценария groovysh является экземпляром 'org.codehaus.groovy.tools.shell.Main' .И я нашел следующий код в скрипте groovysh
if [ "x$OLDSHELL" != "x" ]; then </br>
startGroovy groovy.ui.InteractiveShell "$@"
else
startGroovy org.codehaus.groovy.tools.shell.Main "$@"
fi
Приведенный выше код и этот поток сообщают мне groovy.ui.InteractiveShell уходит.
Возможно, в будущем планируется более тесно интегрировать новую оболочку в Eclipse?
В любом случае, мне удалось его взломать, чтобы я мог вызвать скрипт groovysh с classpath, необходимыми для работы с кодом из моего проекта Eclipse.Теперь я могу счастливо развиваться в REPL.Но это грязно, и я использую фляги в автономном дистрибутиве Groovy для запуска Groovy вместо тех, которые использовали мой проект Eclipse.Я полагаю, что может быть лучший способ.
Кто-нибудь нашел хороший способ интегрировать REPL, запускаемый из сценария groovysh и проекта в Eclipse.Или вы нашли общий лучший способ разработки с Groovy REPL?