0

Mac osx で外部 jar を実行しようとしています。その出力が必要で、プロパティを設定します

私のコード:

ProcessBuilder pb = new ProcessBuilder();
System.setProperty("user.home", file1);
Console.Out(System.getProperty("user.home"));
ArrayList<String> args = new ArrayList<String>();
args.add("java");
args.add("-jar");
args.add(jarFile);
pb.command(args);
Process p = pb.start();
System.setProperty("user.home", ModMaker.Root + "/MCP/jars");
BufferedReader bf = new BufferedReader(new InputStreamReader(p
        .getInputStream()));
while(bf.readLine() != null)
    ;
if(!new File(somedir).exists()) {
    int result = Joptionpane.showConfirmDialog(Gui.getFrame(),
            "Program isn't installed properly!\n\nRun It again?",
            "Not installed!", JOptionPane.YES_OPTION,
            JOptionPane.WARNING_MESSAGE);
    if(result == 0) {
        runAgain();
    }
}

しかし、これを実行すると、bf.readLine はすぐに null になり、停止したと表示されます。しかし、そうではありません。また、プロパティは外部プロセスでは変更されません。

編集:これをWindowsで実行すると、正常に動作します!

4

0 に答える 0