|
The steps can be defined into following manner:
- Create a ScriptEngineManager object using the engine name:
Example:
ScriptEngineManager mgr = new ScriptEngineManager();
ScriptEngine engine = mgr.getEngineByName("JavaScript");
try
{
engine.eval("print('Hello, world!')");.
}
catch (ScriptException ex)
{
ex.printStackTrace();
}
Above example retrieved a scripting engine directly from a script manager. If you need to retrieve a ScriptEngine object using more complicated criteria, you may need to get the entire list of supported ScriptEngineFactory objects first. A ScriptEngineFactory can create ScriptEngine objects for a specific scripting language.
Retrieve a ScriptEngine object from the manager:
Retrieve a list of all engines installed to your Java platform and you can also retrieve various details about the scripting language like the language name and version, aliases for script engine, and a ScriptEngine object for the scripting language.
ScriptEngineManager mgr = new ScriptEngineManager();
List factories = mgr.getEngineFactories();
Let's take an example which shows how to retrieve this information:
ScriptEngineManager mgr = new ScriptEngineManager();
List factories = mgr.getEngineFactories();
for (ScriptEngineFactory factory: factories)
{
System.out.println("ScriptEngineFactory Info");
String engName = factory.getEngineName();
String engVersion = factory.getEngineVersion();
String langName = factory.getLanguageName();
String langVersion = factory.getLanguageVersion();
System.out.printf("\tScript Engine: %s (%s)\n", engName, engVersion);
List engNames = factory.getNames();
for(String name: engNames)
{
System.out.printf("\tEngine Alias: %s\n", name);
}
System.out.printf("\tLanguage: %s (%s)\n", langName, langVersion);
}
Notice that the list of script-engine factories contains only one entry for the Mozilla Rhino engine. Although it is the only engine available in the core Java SE 6 platform libraries, you can add additional engines by installing a JAR file-based service provider into your JRE.
|