Java Wrapper a código Perl / Python
-
05-07-2019 - |
Pregunta
Tengo que implementar algunos servicios web en un servidor que solo admite los de Java, pero algunos de ellos se realizarán utilizando perl o python. Quiero saber si es posible desarrollar un contenedor Java para llamar a un código específico escrito en perl o python. Por lo tanto, quiero tener todos los servicios web en Java, pero algunos de ellos llamarán a algún código usando otros idiomas.
Gracias de antemano. Saludos, Ukrania
Solución
Esto depende en gran medida de sus necesidades. Si Jython es una opción para el código Python (no siempre es 100% compatible), entonces es probablemente la mejor opción allí. De lo contrario, deberá utilizar el Generador de procesos de Java para llamar directamente a los intérpretes y devolver los resultados en su flujo de salida. Esto no será rápido (pero, de nuevo, Jython tampoco es tan rápido en relación con el código Java normal), pero es una solución extremadamente flexible.
Otros consejos
Para la parte de Python, puedes usar Jython para ejecutar el código de Python directamente desde tu máquina virtual Java. . Se integrará completamente con su código Java como un bono.
Para Perl, use Inline :: Java . Hay varias opciones para integrar el código; puede llamar a un proceso separado o puede usar un < a href = "http://search.cpan.org/dist/Inline-Java/Java/PerlInterpreter/PerlInterpreter.pod" rel = "nofollow noreferrer"> intérprete integrado .
Para Python puede usar la API de secuencias de comandos Java .
Lamentablemente, todavía falta una implementación de Perl.
Hay algo que usé hace un tiempo llamado Jython que le permite ejecutar código Python desde Java. Fue un poco peculiar, pero conseguí que hiciera lo que necesitaba.