es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Desafortunadamente, no es posible ejecutar directamente una función principal de Java desde una ventana de comandos abierta por un programa de Java. Sin embargo, lo que puede hacer es compilar y ejecutar el programa de Java por separado desde la ventana de comandos, y luego utilizar la clase ProcessBuilder para ejecutar el programa de Java compilado desde dentro del programa de Java. A continuación se muestra un código de ejemplo:

    ProcessBuilder pb = new ProcessBuilder("java", "mipackage.miclase");
    pb.redirectOutput(ProcessBuilder.Redirect.INHERIT);
    pb.redirectError(ProcessBuilder.Redirect.INHERIT);
    Process p = pb.start();
    p.waitFor();
    

    Este código crea un nuevo ProcessBuilder que ejecuta el comando java con el argumento mipackage.miclase, que es el nombre totalmente calificado de la clase de Java que contiene la función principal que desea ejecutar. Luego redirige las salidas y errores del proceso a la consola, y comienza el proceso. Finalmente, espera a que el proceso termine antes de salir del programa de Java.

Comments are closed.