会社の内部ツールキットのフロントエンドを構築しています。ツールの半分はPythonで書かれ、残りの半分は他のいくつかのスクリプト言語で書かれています。だから私はswingを使ってJavaでフロントエンドを構築しています。これまでのところ、次のコードを使用してPythonスクリプトを呼び出すことができます。
public class Foo
{
public static void main(String[] args)
{
try
{
Runtime r = Runtime.getRuntime();
Process p = r.exec("python foo.py");
BufferedReader br = new BufferedReader(new InputStreamReader(p.getInputStream()));
p.waitFor();
String line = "";
while (br.ready())
System.out.println(br.readLine());
}
catch (Exception e)
{
String cause = e.getMessage();
if (cause.equals("python: not found"))
System.out.println("No python interpreter found.");
}
}
}
これは見事に機能しますが、Pythonスクリプトでエラーが発生した場合、エラーは出力されません。エラーが発生した場合も出力されるようにするにはどうすればよいですか?