2009-10-27 18 views
8

Dato classe inferiore,ignorare System.exit() da un'altra classe

public class ClassOne { 
    public static void main(String... args) { 
     System.exit(1); 
    } 
} 

La seguente classe sarà distrutto così, assumendo non ci sono altre cose da fare dopo ClassOne.main viene richiamato.

public class ClassTwo { 
    public static void main(String... args) { 
     ClassOne.main(args); 
     Thread.sleep(30000); 
    } 
} 

C'è un modo per ignorare System.exit (1); di ClassOne nell'invocazione di ClassTwo?

+0

possibile duplicato di [Java: come testare metodi che chiamano System.exit()?] (Http://stackoverflow.com/questions/309396/java-how-to-test-methods-that-call-system -exit) –

risposta

13

Non è possibile ignorarlo di per sé, ma è possibile impedire la chiusura della JVM tramite SecurityManager. Dai un'occhiata a this question per un esempio di codice dettagliato.

+0

Grazie per il riferimento a questa roba interessante. +1 –

+0

Grazie amico, mi ha risparmiato un sacco di tempo. – Joset

+0

Scusa, ma cos'è _se_ ("Non puoi ignorarlo per _se_")? –

Problemi correlati