Saltar al contenido

Lenguajes compatibles con Java ScriptEngine

Solución:

Aquí hay una secuencia de comandos para determinar todos los idiomas en su sistema:

import java.util.List;
import javax.script.ScriptEngineManager;
import javax.script.ScriptEngine;
import javax.script.Bindings;
import javax.script.ScriptContext;
import javax.script.ScriptEngineFactory;


public class Test {

public static void main(String[] args)
{
    ScriptEngineManager mgr = new ScriptEngineManager();
    List<ScriptEngineFactory> 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<String> engNames = factory.getNames();
        for (String name : engNames)
        {
            System.out.printf("tEngine Alias: %sn", name);
        }
        System.out.printf("tLanguage: %s (%s)n", langName, langVersion);
        }
    }

}

Espero que esto ayude.

.. Sé con certeza que JavaScript es compatible, ..

ECMAscript, técnicamente.

.. pero no pude encontrar ningún otro idioma para trabajar con él. ¿Está implementado, por ejemplo, Ruby?

No. El motor ECMAscript es el único incluido por defecto, la última vez que escuché.

Actualizar

Los comentarios de Pointy a continuación sugieren que el motor Nashorn ha quedado obsoleto y se eliminará “pronto”.

No en ScriptEngine, pero aún puede usar BSF. Desde Apache Commons Bean Scripting Framework, puede encontrar su documentación aquí. –

BSF 2.x admite varios lenguajes de secuencias de comandos actualmente:

  • Javascript (usando Rhino ECMAScript, del proyecto Mozilla)
  • NetRexx (una extensión del lenguaje de scripting IBM REXX en Java)
  • Commons JEXL
  • Python (usando Jython)
  • Tcl (usando Jacl)
  • Hojas de estilo XSLT (como componente de Xalan y Xerces del proyecto Apache XML)

Además, los siguientes idiomas son compatibles con sus propios motores BSF:

  • Java (usando BeanShell, del proyecto BeanShell)
  • Groovy
  • Mono maravilloso
  • JLog (PROLOG implementado en Java)
  • JRuby
  • JudoScript
  • ObjectScript
  • ooRexx (Open Object Rexx), usando BSF4ooRexx.
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *