Я разрабатываю две программы Java, которые работают в отдельном VM's, которые имеют типичный сервер/связи с потребителями. Используя параллельные/последовательные задачи муравья я был в состоянии заставить муравья выполнять сервер и затем клиент. Я теперь хотел бы его так, чтобы, когда клиентский процесс остановился, муравей уничтожил сервер. Я видел сделанный с пользовательскими задачами Ant для определенных серверных приложений (как TomCat), какой-либо метод существует для того, чтобы сделать это с универсальными процессами Java?
Поскольку вы разрабатываете серверное приложение, вы можете заставить его прослушивать команду "выключение". Затем вы можете попросить ant отправить ему команду выключения, когда клиент завершает работу, что-то вроде:
<parallel>
<server .../>
<sequential>
<client ... />
<!-- client has finished, send stop command to server -->
</sequential>
</parallel>
Другой вариант, который может сработать для вас, - запустить сервер внутри элемента демонов
.
<parallel>
<daemons>
<server .../>
</daemons>
<sequential>
<client ... />
</sequential>
</parallel>
Это заставит сервер работать в потоке демона, что не помешает Ant от завершения. Когда муравей останавливается, все потоки демона, включая ваш сервер, будут остановлены.