Получение ввода для файла java, скомпилированного в java - PullRequest
0 голосов
/ 20 апреля 2020

Для справки: я работал над свинг-приложением (да, я знаю, что оно устарело - оставьте меня в покое), которое позволяет писать, компилировать файл и выводить результат main указанного файла в JTextArea Терминале. Теперь я получил JTextArea в качестве выходного сигнала (System.out), но я не могу заставить его принять ввод. я видел другой вопрос, который был похож, связанный здесь , и он говорит просто запустить myclass.main, но я не понимаю его, и он старый, поэтому я не могу ответить. Как лучше всего go об этом?

мой код компиляции:

//This creates a file
public void createAndRun(String fileName, String text){
        System.out.println("File: " + fileName);
        File file;
        try{
            file = new File((fileName + ".java"));
            FileWriter writer = new FileWriter(file);
            writer.write(text);
            writer.close();
        }catch(IOException e){
            e.printStackTrace();
        }
        try{
            runProcess("javac "+fileName+".java");
            runProcess("java "+fileName);
        }catch(Exception e){
            e.printStackTrace();
        }
    }
//This just runs a process to make the above code easier to read
private static void runProcess(String command) throws Exception{
        Process pro;
        pro = Runtime.getRuntime().exec(command);
        pro.waitFor();
        System.out.println(command + " exitValue(): " + pro.exitValue());
    }

Чтобы быть понятным: он может запустить любой файл, который имеет дело только с печатью строк кода. Это не проблема. Проблема заключается в вводе. Любая помощь будет принята с благодарностью.

...