admin 管理员组

文章数量: 1184232

2019独角兽企业重金招聘Python工程师标准>>>

Process

ProcessBuilder.start() 和 Runtime.exec 方法创建一个本机进程,并返回 Process 子类的一个实例,该实例可用来控制进程并获得相关信息。

ProcessBuilder

此类用于创建操作系统进程。

Runtime

每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接。

一.使用ProcessBuilder

    通过ProcessBuilder创建操作系统进程,启动Chrome,这种方式比较灵活,可以代入启动参数:

String path = "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe";
String target = "http://www.rumoss";
List<String> cmd = new ArrayList<String>();
cmd.add(path);
//cmd.add("--no-first-run");
cmd.add("--start-maximized");// 窗口启动最大化
cmd.add("--incognito");// 隐身模式打开
cmd.add("--user-data-dir=D:/test");
cmd.add(target);
ProcessBuilder process = new ProcessBuilder(cmd);
process.start();

 

二.使用Runtime

    通过命令行启动,跟我们在cmd下执行,效果是一样的:

String command = "cmd /c start http://www.rumoss";
Runtime.getRuntime().exec(command);

 

三.其他的方式,调用桌面默认的浏览器

    通过Desktop和Desktop.Action.BROWSE,使用默认方式打开:

String path = "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe";
String target = "http://www.rumoss";        
if(Desktop.isDesktopSupported()) {
    URI uri = URI.create(target);
    Desktop desktop = Desktop.getDesktop();
    if(desktop.isSupported(Desktop.Action.BROWSE)) {
        desktop.browse(uri);
    }
}

 

转载于:https://my.oschina/javamaster/blog/1928883

本文标签: 浏览器 网页 java chrome