2017-07-17 3 views
2

Ich bin neu in Java und Fenster auch Ich möchte den Prozess, der auf einem bestimmten Port ausgeführt wird. sagen wir mal 9090.Wie finde ich die Prozess-ID eines Prozesses läuft auf einer Port-Nummer in Java

was habe ich versucht,

try{ 
    Runtime rt = Runtime.getRuntime(); 
    Process proc = rt.exec("netstat -ano | findstr 9090"); 

    BufferedReader stdInput = new BufferedReader(
            new InputStreamReader(proc.getInputStream())); 
    String s = null; 

    if ((s = stdInput.readLine()) != null) { 
     int index=s.lastIndexOf(" "); 
     String sc=s.substring(index, s.length()); 

     rt.exec("Taskkill /PID" +sc+" /T /F"); 

    } 
    JOptionPane.showMessageDialog(null, "Server Stopped"); 
}catch(Exception e){ 
    JOptionPane.showMessageDialog(null, "Something Went wrong with server"); 
} 
+2

Bitte geben Sie an, welche Ausgabe/Fehler Sie erhalten haben, wenn Sie obigen Code ausgeführt haben. –

Antwort

0

Dieses ist, was Sie tun möchten. Ich hoffe es hilft dir.

try{ 
       Runtime rt = Runtime.getRuntime(); 
       Process proc = rt.exec("cmd /c netstat -ano | findstr 9090"); 

       BufferedReader stdInput = new BufferedReader(new 
       InputStreamReader(proc.getInputStream())); 
       String s = null; 
       if ((s = stdInput.readLine()) != null) { 
       int index=s.lastIndexOf(" "); 
       String sc=s.substring(index, s.length()); 

       rt.exec("cmd /c Taskkill /PID" +sc+" /T /F"); 

     } 
       JOptionPane.showMessageDialog(null, "Server Stopped"); 
     }catch(Exception e){ 
       JOptionPane.showMessageDialog(null, "Something Went wrong with server"); 
      } 
Verwandte Themen