加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > Linux > 正文

从Java程序打开浏览器窗口

发布时间:2020-12-13 19:09:23 所属栏目:Linux 来源:网络整理
导读:题 我有一个用Java编写的应用程序.它被设计为独立运行在Linux机器上.我正在尝试生成一个新的firefox窗口.但是,Firefox从未打开过.它总是有一个shell退出代码1.我可以使用gnome-terminal运行相同的代码,它打开正常. 背景 所以,这是它的初始化过程: 开始X“Xo

我有一个用Java编写的应用程序.它被设计为独立运行在Linux机器上.我正在尝试生成一个新的firefox窗口.但是,Firefox从未打开过.它总是有一个shell退出代码1.我可以使用gnome-terminal运行相同的代码,它打开正常.

背景

所以,这是它的初始化过程:

>开始X“Xorg:1 -br -terminate -dpms -quiet vt7”
>启动窗口管理器“metacity –display =:1 –replace”
>配置资源“xrdb -merge / etc / X11 / Xresources”
>成为守护进程并断开与控制终端的连接

一旦程序运行起来,用户可以点击一个按钮来生成一个firefox窗口.这是我的代码.记得X在显示器上运行:1.


public boolean openBrowser()
{
  try {
    Process oProc = Runtime.getRuntime().exec( "/usr/bin/firefox --display=:1" );
    int bExit = oProc.waitFor();  // This is always 1 for some reason

    return true;

  } catch ( Exception e ) {
    oLogger.log( Level.WARNING,"Open Browser",e );
    return false;
  }
}
最佳答案
在阅读了各种答案和各种评论后(来自提问者),这就是我要做的

1)尝试这种java方法
http://java.sun.com/j2se/1.5.0/docs/api/java/lang/ProcessBuilder.html

ProcessBuilder pb = new ProcessBuilder("myCommand","myArg1","myArg2");
Map

详细了解这个课程:

http://java.sun.com/developer/JDCTechTips/2005/tt0727.html#2
http://www.javabeat.net/tips/8-using-the-new-process-builder-class.html

2)尝试从C/C++ / ruby?? / python执行此操作(启动firefox),看看是否成功.

3)如果所有其他方法都失败了,我会启动一个shell程序,那个shell程序会启动firefox !!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读