通过java代码运行.dmg文件

时间:2011-09-29 15:18:48

标签: java macos

如何在OS X下通过java代码挂载.dmg文件?

4 个答案:

答案 0 :(得分:3)

这将有效(但仅适用于OS X):

    try {
        String[] command = {"/usr/bin/hdiutil", "attach", "/Users/path/to/your.dmg"};
        String sendback = "";    
        Process proc = Runtime.getRuntime().exec(command);
        InputStream istr = proc.getInputStream();
        BufferedReader br = new BufferedReader(new InputStreamReader(istr));
        String str;
        while ((str = br.readLine()) != null) {
            sendback = sendback + str;
        }
        int resultCode = proc.waitFor();
        br.close();
        if (resultCode != 0) {
            throw new Exception("failed to open system profiler");
        }
    }
    catch (IOException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    catch (InterruptedException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }
    catch (Exception e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

答案 1 :(得分:2)

DMG不是可执行文件,是apple diskimages

参考是here

因此你不能“跑”它。

答案 2 :(得分:0)

当然,您可以使用Process。但除了Mac之外,它无法在任何地方使用。

答案 3 :(得分:0)

这就像询问如何通过Java运行ISO文件一样。你根本做不到;这是一张磁盘映像。