import java.util.List; import javax.script.*; import java.io.Console; public class Example { void runInput() throws Exception { ScriptEngineManager manager = new ScriptEngineManager(); ScriptEngine engine = manager.getEngineByName( "rhino" ); System.out.println( engine.eval( System.console().reader() ) ); } void listScriptFactories() { ScriptEngineManager manager = new ScriptEngineManager(); List<ScriptEngineFactory> factories = manager.getEngineFactories(); for (ScriptEngineFactory factory : factories) System.out.println( factory.getEngineName() ) ; } public static void main(String[] args) throws Exception { Example example = new Example(); example.listScriptFactories(); example.runInput(); } } C:\src\java\scripting>javac Example.java
C:\src\java\scripting>java Example Mozilla Rhino var a=3; var b=10; a * (b - 1) ^Z 27.0 C:\src\java\scripting>
Thursday, October 18, 2007
Java 6 Scripting with Rhino
Java 6 introduces scripting capabilities for interpreted languages. This example accepts input from the console and evaluates it.