桌面浏览在java中不适用于Ubuntu

Gow*_*yer 6 java ubuntu desktop-application

desktop = Desktop.getDesktop().browse(uri);
Run Code Online (Sandbox Code Playgroud)

上面的代码在Ubuntu OS中不起作用.如果我执行此代码,那么我的应用程序会被触发并挂起一段时间,在此期间我无法在java控制台中停止正在运行的应用程序.能够关闭该应用程序的唯一方法是FORCE QUIT.

Pie*_*ust 1

此 API 依赖于 gnome 库,您需要安装 gnome 库才能正常工作。

我认为类似的东西sudo apt-get install libgnome应该可以解决问题(手头没有我的 ubuntu 桌面来检查包名称,apt-cache search libgnome如果这不起作用,请尝试查找真实名称)。

注意:您应该指定您正在使用哪个 JVM,我假设它是 oracle JVM。

您也可以尝试browserlaunch2 ,但它相当旧,我自己从未使用过它。正如其网站上所写,它的目的是在提供的网址上打开默认浏览器:

BrowserLauncher2 是 BrowserLauncher 项目的延续,它是一个有助于从 Java 应用程序打开浏览器并将浏览器定向到提供的 url 的库。在大多数情况下,打开的浏览器将是用户的默认浏览器。

BrowserLauncher launcher = new BrowserLauncher();
launcher.openURLinBrowser("http://www.google.com");
Run Code Online (Sandbox Code Playgroud)

由于 BrowserLauncher2 是开源的,您还可以看看它如何检测默认浏览器。