Доступ к выводу из компилятора Java в C # - PullRequest
2 голосов
/ 23 сентября 2010

Я пишу программу на C #, которая будет компилировать Java-файлы с использованием Java-компилятора (Javac).У меня проблемы с записью выходных данных из javac (инструмент командной строки), чтобы сообщить пользователю об ошибках.Я знаю, как запустить процесс и захватить стандартный вывод, но javac ничего не возвращает.Есть ли другой способ, которым я могу захватить вывод, или, что еще лучше, получить список ошибок от компилятора Java?

Ответы [ 2 ]

2 голосов
/ 23 сентября 2010

Может быть, вам лучше использовать вывод ошибок процесса. Process.StandardError

1 голос
/ 23 сентября 2010

Я думаю, что это происходит, потому что ошибки отправляются на stderr вместо stdout.Один из способов обойти это - перенаправить вывод на stderr на stdout и перехватить его.Например:

javac files.java 2>&1

Или вы также можете получить доступ к потоку Process.StandardError, как рекомендовано MAKKAM.

...