Process
ProcessBuilder.start() 和 Runtime.exec 方法创建一个本机进程,并返回 Process 子类的一个实例,该实例可用来控制进程并获得相关信息。
ProcessBuilder
此类用于创建操作系统进程。
Runtime
每个 Java 应用程序都有一个 Runtime 类实例,使应用程序能够与其运行的环境相连接。
一.使用ProcessBuilder
通过ProcessBuilder创建操作系统进程,启动Chrome,这种方式比较灵活,可以代入启动参数:
1String path = "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe"; 2String target = "http://www.rumoss.cn"; 3List<String> cmd = new ArrayList<String>(); 4cmd.add(path); 5//cmd.add("--no-first-run"); 6cmd.add("--start-maximized");// 窗口启动最大化 7cmd.add("--incognito");// 隐身模式打开 8cmd.add("--user-data-dir=D:/test"); 9cmd.add(target); 10ProcessBuilder process = new ProcessBuilder(cmd); 11process.start();
二.使用Runtime
通过命令行启动,跟我们在cmd下执行,效果是一样的:
1String command = "cmd /c start http://www.rumoss.cn"; 2Runtime.getRuntime().exec(command);
三.其他的方式,调用桌面默认的浏览器
通过Desktop和Desktop.Action.BROWSE,使用默认方式打开:
1String path = "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chrome.exe"; 2String target = "http://www.rumoss.cn"; 3if(Desktop.isDesktopSupported()) { 4 URI uri = URI.create(target); 5 Desktop desktop = Desktop.getDesktop(); 6 if(desktop.isSupported(Desktop.Action.BROWSE)) { 7 desktop.browse(uri); 8 } 9}