2010-10-11 6 views
16

Quiero ser capaz de manipular objetos en memoria en mi aplicación Java interactivamente para fines de depuración. Me gustaría hacer esto utilizando el intérprete 2.8 de Scala, aprovechando sus características como completar una pestaña. ¿Cómo hago esto?¿Cómo incrusto el intérprete de Scala 2.8 en una aplicación Java?

+2

¿Está buscando para entrar en el REPL mediados de ejecución (en base a alguna condición), ejecute el REPL en paralelo en un hilo separado, conectarse a una máquina virtual remota, o simplemente poner su proyecto en el alcance en el classpath REPL? –

+0

¿Te gusta http://stackoverflow.com/questions/2160355/drop-into-interpreter-during-arbitrary-scala-code-location? –

+0

Kevin, opción 2 – sanity

Respuesta

4

Consulte Josh Suereth's Embedding the Scala Interpreter.

Puedes ver las sugerencias de autocompletar abajo.

[email protected]:~/projects/blog/embed-the-interpreter$ java -jar target/embedded-interpreter-0.1-SNAPSHOT-jar-with-dependencies.jar 
Welcome to Awesomeness! 
This is my version of the Scala interpreter 
TestInterpreter> j 

java javax jline 

Creo que también implementó la característica en Scala IDE para Eclipse por lo que también echar un vistazo a eso. La última es available online.

Quería ejecutar código Scala como parte de las pruebas, así que he implementado CompilerMatcher siguiendo su artículo.

+3

Desafortunadamente a partir de ahora, ese enlace requiere registrarse en blogger y obtener una invitación al blog. – mseddon

Cuestiones relacionadas