Вставить ввод в консоль Eclipse - Java - PullRequest
0 голосов
/ 23 июня 2011

вот моя проблема.У меня есть сервер, который запускается внутри Eclipse, поэтому процесс всегда работает, пока я его не убью.

Если я хочу выполнить чистое завершение работы, я могу написать «shutdown» прямо в консоли eclipse и нажать Enter,Мне нужно чистое завершение работы (а не просто выполнение задачи), потому что сервер должен отправлять ловушку snmp до того, как он закрывается.

Что я хочу знать, так это то, возможно ли, что «завершение работы» может быть записанов консоли в качестве ввода непосредственно из метода Java (stopServer())?

Это для целей тестирования, и оно должно быть автоматизировано.И нет возможности написать сценарий, который бы это сделал.

Спасибо.

Ответы [ 3 ]

1 голос
/ 23 июня 2011

Это сервер JavaEE, который вы настраиваете и разрушаете? Если это так, вы смотрели в Cargo ? Он имеет множество функций для настройки, развертывания и разборки контейнеров как в коде (в вашем JUnit beforeClass / afterClass), так и / или через плагин maven.

1 голос
/ 23 июня 2011

Если вы не уверены, что ваш сервер может прочитать команду ввода, зачем вообще делать это с текстовой командой? Текстовая команда - только читаемая / интерактивная форма функции callcall, верно? Может быть, я не совсем понимаю, что вы хотите, но мне кажется проще написать обработчик сигналов, который всегда выполняет чистое отключение.

Если вы действительно хотите это сделать, вы, вероятно, можете сделать это, написав в STDIN (в основном, что делает консоль).

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

Как насчет метода stopServer(), содержащего всю логику выключения и делающего команду выключения просто еще одним способом вызова метода stopServer().Это намного проще, чем отправлять команду на консоль.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...