2015-06-07 2 views
0

У меня есть функция Java, которая должна быть забирающий на PID процесса, и он работает на окнахПолучение PID процесса на Windows, OSX и Linux

public static String executeJps() throws IOException { 
     Process p = Runtime.getRuntime().exec("jps -l"); 
     String line = null; 
     BufferedReader in = new BufferedReader(new InputStreamReader(
                p.getInputStream(), "UTF-8")); 

     String pid = null; 
     while ((line = in.readLine()) != null) { 
      String [] javaProcess = line.split(" "); 
      if (javaProcess.length > 1 && javaProcess[1].contains("DEDServer")) { 
       pid = javaProcess[0]; 
      } 
     } 

     return pid; 
} 

Будет та же функция получить PID успешно на Маках и Операционные системы Linux и в основном все операционные системы? Или есть что-то еще, что нужно сделать, чтобы еще одна функция?

У меня нет ничего, кроме ОС Windows, поэтому, если вы собираетесь опубликовать какой-либо новый код, пожалуйста, его можно проверить?

Спасибо!

+0

Ответ такой же, как и на вопрос: существует ли на javascript-платформа 'jps -l' на других платформах и работает ли она так же, как на окнах? – A4L

+0

jps является частью JDK? Будет ли JDK на всех производственных машинах? – Jayan

+0

JDK будет на всех машинах да. @Jayan –

ответ

1

Внедрение ручной записи в формате jps означает, что jps должен работать на всех платформах, поддерживаемых Oracle (Oracle), и что выходной формат является одинаковым.

Смежные вопросы