小编Arp*_*dax的帖子

Java上忽略了Java proc.waitfor()

我编写了一个在mac上运行的简单程序,程序打开一个excel文件并等待用户关闭文件,然后给出一个简单的输出.当我运行程序时,excel打开,proc.waitfor被忽略,它只是跳过输出而不等待,任何帮助谢谢

  Thread myThread = new Thread() {

        @Override
        public void run() {
            try {
                String userDir = (System.getProperty("user.home"));

                String fileName = userDir + "/Desktop/test/testfile.xlsx";
                File theFile = new File(fileName);
                Process proc = new ProcessBuilder("/usr/bin/open", fileName).start();
                int waitFor = proc.waitFor();
            } catch (InterruptedException ex) {
                Logger.getLogger(MacTester.class.getName()).log(Level.SEVERE, null, ex);
            } catch (IOException ex) {
                Logger.getLogger(MacTester.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    };

    myThread.start();
    System.out.println("excel is now closed");
Run Code Online (Sandbox Code Playgroud)

java macos netbeans process

2
推荐指数
2
解决办法
298
查看次数

标签 统计

java ×1

macos ×1

netbeans ×1

process ×1