java中browse_java – 支持Desktop和desktop.browse,但浏览仍然挂起

我正在尝试在Java的默认浏览器中打开一个链接.我不想创建一个简单的Web浏览器,我想使用现有的浏览器.人们建议使用以下内容:

Desktop.getDesktop().browse(new URI("http://www.targetsite.com"));

然而,这只是在调用浏览时挂起,我最终不得不强行退出.

我看到了运行以下内容的建议,以确定Desktop和desktop.browse是否应该在我的系统上运行:

if (Desktop.isDesktopSupported()) {

System.out.println("Desktop IS supported on this platform ");

if (Desktop.getDesktop().isSupported(Desktop.Action.BROWSE)) {

System.out.println("Action BROWSE IS supported on this platform ");

} else {

System.out.println("Action BROWSE ISN'T supported on this platform ");

}

} else {

System.out.println("Desktop ISN'T supported on this platform ");

}

给出了输出:

Desktop IS supported on this platform

Action BROWSE IS supported on this platform

我该怎么做才能解决或解决这个问题?

使用Java 1.8.0_73

解决方法:

看起来你做的一切都正确,你的代码应该在Windows和OS X中按预期工作.毫不奇怪,在Linux中支持Desktop并不是那么好.您可以尝试另一种方法:

if (Runtime.getRuntime().exec(new String[] { "which", "xdg-open" }).getInputStream().read() != -1) {

Runtime.getRuntime().exec(new String[] { "xdg-open", urlString });

}

标签:java,url,desktop,web

来源: https://codeday.me/bug/20190527/1166476.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值