Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How do I embed the Scala 2.8 interpreter in a Java application?

Tags:

scala

I want to be be able to manipulate objects in memory in my Java app interactively for debugging purposes. I would quite like to do this using Scala's 2.8 interpreter, taking advantages of its features like tab-completion. How do I do this?

like image 688
sanity Avatar asked Oct 11 '10 11:10

sanity


2 Answers

See Josh Suereth's Embedding the Scala Interpreter.

You can see the auto-complete suggestions below.

josh@suereth-desktop:~/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

I think he also implemented the feature into Scala IDE for Eclipse so you also take a look at that. The latest is available online.

I wanted to run Scala code as part of testing, so I've implemented CompilerMatcher following his article.

like image 155
Eugene Yokota Avatar answered Nov 03 '22 04:11

Eugene Yokota


Here's an example of providing an embedded scala 2.9.1 over ssh: scala-ssh-shell

like image 2
srparish Avatar answered Nov 03 '22 06:11

srparish