Elixir - Запуск Java JInterface OTP-узла под наблюдением - PullRequest
1 голос
/ 18 февраля 2020

У меня есть зонтичный проект elixir, в котором одно из приложений отправляет запросы приложению Java, которое я представил как нечто похожее на процесс OTP, использующий JInterface.

Он отлично работает, потому что библиотека JInterface, которая поставляется с Erlang. Это просто.

Моя проблема в том, что мне нужно иметь возможность остановить и запустить процесс JInterface в своем зонтичном приложении, и я не могу найти документацию, которая показывает, как это сделать. В настоящее время я должен выполнить банку вручную.

Может, кто-нибудь объяснит / укажет мне на документацию, показывающую, как я могу выполнить свою банку изнутри эликсира под наблюдением?

Я так долго пытался узнать, как это сделать, но я могу только найти документы о том, как использовать JInterface и как с ним взаимодействовать, но не о том, как запустить его программно под надзором. Заранее спасибо.

1 Ответ

3 голосов
/ 18 февраля 2020

Долгое время go Я должен был сделать именно это, и результат был lucene_server . Вы можете найти код для мониторинга узла здесь . Что-то вроде ...

true = link(process()),
true = erlang:monitor_node(State#state.java_node, true),

Еще одна вещь, которая может оказаться полезной (со стороны Java), это использовать jinerface_stdlib

...