Approvato: Fortect
Negli ultimi giorni, alcuni lettori ci hanno già detto di aver visto un esempio verso Linux Runtime.getruntime .exec.
Le soluzioni suggerite potrebbero includere l’utilizzo di commons.io, la gestione di un flusso di errori e quindi l’utilizzo di eccezioni. Implicherei di riassumere circa 8 o successivi dati statici da utilizzare in Java in questo modo:
Government List execute (comando dell'ultima riga) genera ExecutionFailedException, InterruptedException, IOException Provare Return (comando, 5, zero, falso); dai un'occhiata a (ExecutionTimeoutException e) restituisce null; / * Gli affari sono fattibili! * /elenco statico pubblico eseguire (ultima parola richiesta String, ultimo timeout lungo, ultimo TimeUnit timeUnit) genera ExecutionFailedException, ExecutionTimeoutException, InterruptedException, IOException Esegui ritorno (comando, 0, zero, vero);Elenco dei suoni della comunità locale eseguire (ultimo comando stringa, ultimo timeout enorme, ultimo TimeUnit, distruzione logica OnTimeout) genera ExecutionFailedException, ExecutionTimeoutException, InterruptedException, IOException Processo corso di = new ProcessBuilder () .Order ("bash", "-c", comando) .start (); ! = ogni volta (unità di tempo nullo) if (process.waitFor (timeout, timeUnit)) nell'istanza che (process.exitValue () == 0) Restituisce IOUtils.readLines (process.getInputStream(), StandardCharsets.UTF_8); lanciare la loro nuova ExecutionFailedException ("Execution" non ha funzionato: + Command, process.exitValue (), IOUtils.readLines (process.getInputStream (), StandardCharsets.UTF_8)); un altro dovrebbe (destroyOnTimeout) process.destroy (); lanciare una nuova ExecutionTimeoutException ("Separare l'esecuzione in base al tempo:"+ comando); un altro if (process.waitFor () == 0) IOUtils return.readLines (process.getInputStream(), StandardCharsets.UTF_8); un altro aggiungere una nuova eccezione ExecutionFailedException ("Impossibile eseguire:" + have, process.exitValue (), IOUtils.readLines (process.getInputStream (), StandardCharsets.UTF_8)); la classe stazionaria pubblica ExecutionFailedException genera un'eccezione molto lungo privato statico finale serialVersionUID significa 1951044996696304510L; interno final int exitCode; elenco finale personalizzato errorOutput; public generic ExecutionFailedException (last String toss, final int exitCode, completamento dell'indice di errore ) abbastanza (messaggio); this.exitCode implica ExitCode; this.errorOutput = errorOutput; int pubblico getExitCode() tende a creare this.exitCode; elenco pubblico getErrorOutput () produrre this.errorOutput; ExecutionTimeoutException della classe pubblica vecchio stile estende l'eccezione static final long molto sensibile serialVersionUID corrisponde a 4428595769718054862L; public ExecutionTimeoutException (ultimo messaggio di stringa) super (messaggio);
Approvato: Fortect
Fortect è lo strumento di riparazione PC più popolare ed efficace al mondo. Milioni di persone si affidano a milioni di persone per mantenere i loro sistemi in esecuzione veloci, fluidi e privi di errori. Grazie alla sua semplice interfaccia utente e al potente motore di scansione, Fortect trova e risolve rapidamente un'ampia gamma di problemi di Windows, dall'instabilità del sistema e problemi di sicurezza alla gestione della memoria e ai colli di bottiglia delle prestazioni.
Accelera ora le prestazioni del tuo computer con questo semplice download.