Вопрос

Мне нужно развернуть некоторые веб-сервисы на сервере, который поддерживает только Java, но некоторые из них будут выполнены с использованием perl или python. Я хочу знать, возможно ли разработать Java-оболочку для вызова конкретного кода, написанного на perl или python. Итак, я хочу иметь все веб-сервисы на Java, но некоторые из них будут вызывать некоторый код с использованием других языков.

Заранее спасибо. С Уважением, Ukrania

Это было полезно?

Решение

Это сильно зависит от ваших потребностей. Если Jython является опцией для кода Python (он не всегда совместим на 100%), то это, вероятно, лучший вариант там. В противном случае вам нужно будет использовать Java Process Builder для непосредственного вызова интерпретаторов и возврата результатов в их выходной поток. Это не будет быстрым (но опять же, Jython не так быстр, по сравнению с обычным Java-кодом), но это чрезвычайно гибкое решение.

Другие советы

В части Python вы можете использовать Jython для запуска кода Python прямо с виртуальной машины Java. , В качестве бонуса он полностью интегрируется с вашим Java-кодом.

Для Perl используйте Inline :: Java . Есть несколько вариантов интеграции кода; Вы можете вызвать отдельный процесс или использовать < a href = "http://search.cpan.org/dist/Inline-Java/Java/PerlInterpreter/PerlInterpreter.pod" rel = "nofollow noreferrer"> встроенный интерпретатор .

Для Python вы можете использовать API сценариев Java .
К сожалению, реализация Perl по-прежнему отсутствует.

Некоторое время назад я использовал что-то, называемое Jython, которое позволяет вам выполнять код Python из Java. Это было немного странно, но я заставил его делать то, что мне было нужно.

http://www.jython.org

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top