Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/cmake/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何关闭带有java代码的程序?_Java_Browser - Fatal编程技术网

如何关闭带有java代码的程序?

如何关闭带有java代码的程序?,java,browser,Java,Browser,大家好,我在java应用程序中打开了一个浏览器页面,其中包含以下代码: String URL = "https://www.google.com/"; try { java.awt.Desktop.getDesktop().browse(java.net.URI.create(URL)); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } 现在我必须关闭

大家好,我在java应用程序中打开了一个浏览器页面,其中包含以下代码:

String URL = "https://www.google.com/";
try {
    java.awt.Desktop.getDesktop().browse(java.net.URI.create(URL));
} catch (IOException e) {
    // TODO Auto-generated catch block
    e.printStackTrace();
}

现在我必须关闭浏览器,有代码吗?

没有,没有Java API来关闭浏览器。

有一些,但不太可靠。但如果必须的话,可以尝试使用JavaRobotAPI使用键盘快捷键和鼠标单击

    public class RobotTest {

        public static void main(String[] args) {
            String URL = "https://www.google.com/";
            try {
                java.awt.Desktop.getDesktop().browse(java.net.URI.create(URL));
            } catch (IOException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            try {
                Thread.sleep(3*1000);
            } catch (InterruptedException e1) {
                // TODO Auto-generated catch block
                e1.printStackTrace();
            }
            Robot javaRobot;
            try {
                javaRobot = new Robot();
                javaRobot.keyPress(KeyEvent.VK_ALT);
                javaRobot.keyPress(KeyEvent.VK_F4);
                javaRobot.keyRelease(KeyEvent.VK_ALT);
                javaRobot.keyRelease(KeyEvent.VK_F4);
            } catch (AWTException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
        }
    }

好的,有没有重新加载页面的方法?@user3850946,没有。请注意,Java API中提供的特定于操作系统的功能非常有限,因为它们试图提供独立于平台的公共API。通过
Desktop
类打开带有操作系统默认应用程序的URL几乎就是你所能得到的。使用纯Java无法关闭浏览器或刷新浏览器(任何真正的交互)。