2013-05-15 3 views
0

У меня есть Ubuntu на моей машине, где я установил snmpd. Для запуска остановки я использую следующую команду:Restart Unix service

  1. сервис SNMPD начать
  2. служба SNMPD остановить

Теперь я должен выполнить это комментарии от Явы. Я пробовал, но он не работает.

Runtime.getRuntime.exe("service snmpd start") 

Итак, не могли бы вы рассказать мне, как выполнить службу Linux suse через java?

Любая помощь будет большим

+2

Нет, это не то, что вы пробовали. Это даже не компилируется! –

+1

* «Любая помощь будет большой» * Любой вопрос будет полезен. –

+2

Пожалуйста, прочитайте [эту статью о 'Runtime.exec()'] (http://www.javaworld.com/jw-12-2000/jw-1229-traps.html). Он старый, но он по-прежнему верен (за исключением того, что вы могли бы заменить «Runtime.exec()' на «ProcessBuilder», который имеет более удобный API, но все равно имеет те же самые ямы, чтобы упасть). –

ответ

1

Внезапно люди начали говорить о ссылке, а не вопрос. Решение легко. Нужно дождаться завершения процесса. См. Ниже код.

Process process = Runtime.getRuntime().exec("service snmpd start"); 
process.waitFor();