Obtenir une sortie de commande cmd à partir du code java

J'ai un programme où j'ai été en mesure d'exécuter avec succès les commandes cmd à partir de mon code, mais je veux être en mesure d'obtenir la sortie de la commande cmd. Comment puis-je le faire?

Jusqu'à présent, mon code est:

Second.java:

public class Second {
    public static void main(String[] args) {
        System.out.println("Hello world from Second.java");
    }
}

et Main.java

public class Main {
    public static void main(String[] args) {
        String filename = args[1].substring(0, args[1].length() - 5);
        String cmd1 = "javac " + args[1];
        String cmd2 = "java " + filename;

        Runtime r = Runtime.getRuntime();
        Process p = r.exec(cmd1); //i can verify this by being able to see Second.class and running it successfully
        p = r.exec(cmd2); //i need to see this output to see if 

        System.out.println("Done");
    }
}

Que je puisse vérifier que la première commande est de travailler avec succès par la vérification de Second.class mais que faire si cette classe a généré une erreur, comment vais-je être en mesure de voir cette erreur?

OriginalL'auteur hakuna matata | 2013-12-27