Методы добавления REPL в проект Java

какие методы, которые люди нашли полезными, используя Clojure, Scala,JRuby, build tools и т. д. чтобы модернизировать проект Java с REPL, чтобы быстро экспериментировать?

Мне часто нужно работать с простыми старыми проектами Java (проекты POJO?) и пропустить REPL. другое поэтому вопросы обратитесь к этой теме, но это несколько лет, и ответы датированы.

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

2 ответов


Если проект использует Maven плагин gmaven и сопровождающих mvn groovy:shell полезно, хотя получение его настроить правильно может быть сложным.

для тех проектов, которые не используют Maven, общим шаблоном является включение зависимостей в папку lib и управление ими вручную. Для этого я использовал groovy:

groovysh -cp `echo lib/*.jar | sed 's/ /:/g'`

...или clojure:

java -cp /usr/local/Cellar/clojure/1.3.0/clojure-1.3.0.jar:`echo lib/*.jar | sed 's/ /:/g'` clojure.main

оболочка Clojure по умолчанию также может быть усиливается с rlwrap.


этот вопрос в первую очередь касается систем сборки и потенциальной сложности убеждения существующей системы сборки включить REPL. Одна из вещей, которые я люблю о sbt и Leiningen заключается в том, что они оба обеспечивают поддержку REPL из коробки. К сожалению, перемещение существующего проекта из Ant/Maven / whatever в один из них может быть непростым.

но если ваш существующий проект уже публикуется в репозитории Maven или Ivy (или можно убедить сделать это достаточно легко), затем вы можете создать новый проект sbt или Leiningen, импортировать артефакты, опубликованные вашим существующим проектом, и все готово...