Ruby: Как запустить сервер Java из сценария ruby - PullRequest
0 голосов
/ 29 июня 2011

как мне изменить следующий скрипт ruby, чтобы он работал?(Я нахожусь в Linux.)

# 1. Launch a java server:
system "java -jar myJavaServer.jar -someArgument -otherArgument"

# 2. Execute some ruby code (with the server running):
[...]

# 3. Stop the java server:
system "killall java"

Я полагаю, сервер java должен быть запущен в отдельном потоке ruby, чтобы следующий код выполнялся при работающем сервере ...Большое спасибо за вашу помощь!

Том

1 Ответ

0 голосов
/ 29 июня 2011

Используйте fork (), чтобы запустить сервер Java в одном процессе, а код ruby ​​- в другом.

pid = fork()
if pid then
    # This is the parent process. Execute your ruby code here
    # then kill the process running the java server
    system "kill #{pid}"
else
    # this is the child process, run the java server here
    system "java -jar myJavaServer.jar -someArgument -otherArgument"
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...