0

非常简单的小功能,但有人知道如何从 Java 中休眠 OS X 吗?

干杯

4

3 回答 3

2
System.exec("osascript -e 'tell application \"System Events\" to sleep'");
于 2009-06-10T20:46:26.933 回答
1

请参阅:从命令行使 Mac OS X 进入睡眠状态

使用以下内容创建脚本:

#!/bin/bash
osascript << EOT
tell application "System Events"
     sleep
end
EOT

并使用系统来执行它。

于 2009-06-10T20:45:32.570 回答
-1
    
public void gotoSleep(){
    try{
        logger.finer("Zzz...");

        if (preferences.getOS().equals("OSX") == true ){
        Process p = Runtime.getRuntime().exec
            ("/bin/bash");
        String command = "osascript -e 'tell application \"System Events\"' " 
            + " -e \"sleep\" -e 'end tell'";

        OutputStream stdin = p.getOutputStream();
        stdin.write( command.getBytes() );
        stdin.flush();
        stdin.close();
        }

    }catch( Exception e ) { 
        logger.warning( e.toString() );
    }
}

由于某种原因,当我这样做时,如果不通过 bash 执行它,它就无法工作。

于 2009-06-11T13:32:38.637 回答