Jeg sidder og leger lidt med at kunne genstarte visse processer på min server fra en webside via JSP. Jeg prøver at starte den via:
Process p = Runtime.getRuntime().exec("c:\\file.bat");
Men hvis jeg gør det, så er processen jo en del af min serverthread vel sagtens, og jeg ville helst have filen kørt i et eksternt vindue. I dette tilfælde er det en batch fil som skal lave en masse ting og læse input fra en socketstream, hvor jeg gerne ville se hvad input den læser i en console - men starter jeg den via linien ovenfor, så starter processen bare skjult.
Så spørgsmålet er lidt to-delt.
1) er det muligt at starte en process i sit eget vindue/console?
2) kan man dræbe en process der bare kører på maskinen selvom den ikke er startet via JVM'en? Måske finde den ud fra navn/PID?
Denne side indeholder artikler med forskellige perspektiver på Identity & Access Management i private og offentlige organisationer. Artiklerne behandler aktuelle IAM-emner og leveres af producenter, rådgivere og implementeringspartnere.
Det er så dog ikke en server apps som sådan - det er en application jeg selv har lavet som nogle gange laver en timeout. Og så er det jo behageligt hvis jeg kunne restarte den uden at jeg behøvede logge ind på serveren via RDP/VNC.
Men jeg må kigge på JNI, og ellers ændre min application til at modtage en kill command eller noget. Og så tester jeg dit svar til 1) når jeg kommer hjem.
Process p = Runtime.getRuntime().exec("start c:\\stats-cod.bat");
Virker ikke. Den skriver "java.io.IOException: CreateProcess: start c:\file.bat error=2", når jeg laver e.printStackTrace();
Om jeg så bruger "cmd /k c:\\file.bat" eller bare "c:\\file.bat" gør ingen forskel. Den starter stadig ikke op i noget vindue, og viser sig kun som endnu en java.exe process der kører - og ikke som en cmd.exe som jeg ville have haft.
Jeg fik den vendt om og fik batchfilen til at starte med start, så gik det. Og shutdown måtte jeg lave i shellscripting, og jeg må så finde mig i at det ikke er 100% OS independant.
Lukker spørgsmål - fik det ca måske næsten løst via en omvej og ved at gøre noget andet.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.