【问题标题】:Java runtime.exe() Error launching browser : error accessing current directoryJava runtime.exe() 启动浏览器时出错:访问当前目录时出错
【发布时间】:2010-11-23 09:32:53
【问题描述】:

我一直在尝试从 Linux 上的 Java 应用程序启动浏览器。当这个应用程序第一次运行时,浏览器不会被打开。错误日志显示:shell-init: 无法获取当前目录 getcwd : 没有这样的文件或目录。

在此之后,如果您重新启动,一切就位并且浏览器可以正常打开。

我尝试了很多方法,例如使用 SYStem.setPropert() 将当前目录更改为 /tmp,但没有任何效果。

这个网站上有很多这样的问题,但他们没有帮助。如果有人可以提供解决方法,将不胜感激。

【问题讨论】:

  • 想发布一些代码吗?
  • Runtime.getRuntime().exec(cmd);这就是我想要做的。Cmd 基本上是浏览器命令加上要打开的文件的串联
  • 我试着做 System.setProperty("user.dir",/tmp);但是没用

标签: java browser runtime exec


【解决方案1】:

这是我找到的解决这个问题的最佳方法,因为无论浏览器安装在哪里或其他任何地方,java 都会与操作系统通信并发出运行默认浏览器的请求。

String url = "https://yourdomain.org/";
java.awt.Desktop.getDesktop().browse( java.net.URI.create(url));

【讨论】:

    【解决方案2】:

    如果不了解任何详细信息,您的 Java 代码很可能没有足够的权限访问该目录。

    【讨论】:

    • 不,我认为权限不是问题。可能它正在尝试访问我已清理的目录并给出错误“无法访问当前目录 getcwd”。这就是为什么我在调用 exec 之前尝试更改当前目录。
    猜你喜欢
    • 2012-04-21
    • 1970-01-01
    • 1970-01-01
    • 2019-10-12
    • 2017-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-10
    相关资源
    最近更新 更多