La navigation sur le bureau ne fonctionne pas dans Java pour Ubuntu

desktop = Desktop.getDesktop().browse(uri); 

Le code ci-dessus ne fonctionne pas dans le système d’exploitation Ubuntu. Si j’exécute ce code, mon application se bloque et se bloque pendant un certain temps et pendant ce temps, je ne peux pas arrêter l’application en cours d’exécution sur la console Java. Le seul moyen de fermer cette application est de FORCE QUIT .

Cette API dépend de la bibliothèque gnome, vous devez avoir des bibliothèques gnome installées pour que cela fonctionne.

Je pense que quelque chose de similaire sudo apt-get install libgnome devrait faire l’affaire (ne pas avoir mon bureau ubuntu sous la main pour vérifier le nom du paquet, essayez apt-cache search libgnome pour trouver le vrai nom si cela ne fonctionne pas).

Note: vous devez spécifier la JVM que vous utilisez, je suppose que c’est la JVM Oracle.

Vous pouvez également essayer browserlaunch2 , mais il est plutôt vieux et je ne l’ai jamais utilisé moi-même. Comme il est écrit sur son site Web, il est destiné à ouvrir le navigateur par défaut sur l’URL fournie:

BrowserLauncher2, une suite du projet BrowserLauncher, est une bibliothèque qui facilite l’ouverture d’un navigateur à partir d’une application Java et qui dirige le navigateur vers une URL fournie. Dans la plupart des cas, le navigateur ouvert sera le navigateur par défaut de l’utilisateur.

 BrowserLauncher launcher = new BrowserLauncher(); launcher.openURLinBrowser("http://www.google.com"); 

Comme BrowserLauncher2 est open source, vous pouvez également voir comment il détecte le navigateur par défaut.