Aprobado: Fortect
Durante los últimos días, algunos lectores nos han dicho que han visto un ejemplo debido a Linux Runtime.getruntime .exec.
Las soluciones sugeridas pueden incluir el uso de commons.io, el manejo del flujo de errores actual y, por lo tanto, el uso de excepciones. Afirmaría resumir alrededor de 8 o más datos estáticos para su uso en Java de esta manera:
lista de clientes ejecutar (comando de última línea) arroja ExecutionFailedException, InterruptedException, IOException Tratar Retorno (comando, 3, cero, falso); look (ExecutionTimeoutException e) devuelve nulo; / * ¡El negocio es inútil! * /lista estática pública ejecutar (última cadena de palabras de identificador, último tiempo de espera largo, última TimeUnit timeUnit) lanza ExecutionFailedException, ExecutionTimeoutException, InterruptedException, IOException Ejecutar retorno (comando, 0, cero, verdadero);Lista de sonidos abiertos al público ejecutar (último comando de cadena, último tiempo de espera masivo, última TimeUnit, destrucción lógica OnTimeout) lanza ExecutionFailedException, ExecutionTimeoutException, InterruptedException, IOException Función de proceso = nuevo ProcessBuilder () .Order ("bash", "-c", comando) .start (); ! = asumiendo que (timeUnit null) if (process.waitFor (tiempo de espera, timeUnit)) debería (process.exitValue () == 0) Devuelve IOUtils.readLines (process.getInputStream (), StandardCharsets.UTF_8); lanzar la nueva ExecutionFailedException particular ("Execution" no funcionó: + Command, process.exitValue (), IOUtils.readLines (process.getInputStream (), StandardCharsets.UTF_8)); otro en el caso de que (destroyOnTimeout) process.destroy (); lanzar una nueva ExecutionTimeoutException ("Ejecución separada por tiempo:" + comando); otro si (process.waitFor () == 0) IOUtils return.readLines (process.getInputStream (), StandardCharsets.UTF_8); otro agregar una nueva excepción ExecutionFailedException ("No se pudo ejecutar:" + have, process.exitValue (), IOUtils.readLines (process.getInputStream (), StandardCharsets.UTF_8)); la clase de ruido público ExecutionFailedException lanza una excepción en realidad, el serialVersionUID final estático privado largo significa 1951044996696304510L; internal final int exitCode; lista final personalizada errorOutput; ExecutionFailedException genérica pública (última cadena de voz, código de salida int final, finalización del rango de error ) excelente (mensaje); this.exitCode implica ExitCode; this.errorOutput = errorOutput; público int getSalirCode () genera this.exitCode; lista pública getErrorOutput () producir this.errorOutput; ExecutionTimeoutException de clase pública pasada de moda extiende la excepción coincidencias de serialVersionUID estáticas finales largas e irritadas 4428595769718054862L; public ExecutionTimeoutException (último mensaje de cadena) super (mensaje);
Aprobado: Fortect
Fortect es la herramienta de reparación de PC más popular y eficaz del mundo. Millones de personas confían en él para mantener sus sistemas funcionando de forma rápida, fluida y sin errores. Con su sencilla interfaz de usuario y su potente motor de análisis, Fortect encuentra y soluciona rápidamente una amplia variedad de problemas de Windows, desde la inestabilidad del sistema y los problemas de seguridad hasta la gestión de la memoria y los cuellos de botella en el rendimiento.