Comment créer un fichier .desktop pour lancer eclipse?

5

Lorsque je crée un fichier .desktop pour lancer eclipse (dernière version avec le support JDK 1.8), l'erreur suivante apparaît:

A Java Runtime Environment (JRE) or Java Development Kit (JDK)
must be available in order to run Eclipse. No Java virtual machine
was found after searching the following locations:
/home/dean/bin/eclipse-standard-luna-M5-linux-gtk-x86_64/eclipse/jre/bin/java
java in your current PATH

Pourquoi essaie-t-il de trouver le JRE dans le répertoire où se trouve le binaire Eclipse?

Je peux lancer Eclipse à partir de la ligne de commande, et je peux l'épingler au lanceur et cela fonctionne. Pourquoi le fichier .desktop est-il si confus quant à ce qu'il est censé faire?

Voici mon fichier .desktop:

[Desktop Entry]
Version=1.0
Name=Eclipse JDK 1.8
Comment=Eclipse
Exec=/home/dean/bin/eclipse-standard-luna-M5-linux-gtk-x86_64/eclipse/eclipse
Icon=/home/dean/bin/eclipse-standard-luna-M5-linux-gtk-x86_64/eclipse/icon.xpm
Terminal=false
Type=Application
Categories=Utility;Application;

Le problème que je rencontre n'est pas ce qui a été demandé dans la question liée ci-dessus en tant que duplicata . Mon problème est parce que mon PATH au JDK est défini dans mon .bashrc.

    
posée Dean Schulze 09.02.2014 - 05:38
la source

4 réponses

1

J'ai copié le bloc suivant depuis la déclaration if [ -n "$BASH_VERSION" ]; then :

if [ -f "$HOME/.bashrc_" ]; then
    . "$HOME/.bashrc"
fi

J'ai aussi essayé sans la déclaration if:

. "$HOME/.bashrc"

mais Eclipse échoue avec le même message d'erreur dans les deux cas. Apparemment, HOME n'est pas défini lorsque lightdm exécute ~/.profile .

Définir explicitement le chemin d'accès dans ~/.profile works, mais je veux conserver mon PATH et mes autres fonctionnalités Bash (alias, fonctions) dans le même fichier.

La solution consiste à définir PATH sur la ligne Exec=env PATH=$PATH:... dans eclipse.desktop. Rien de ce que j'ai essayé de faire pour démarrer IntelliJ à partir d'une icône de bureau, cependant.

Étant donné que vous réinventez l’expérience de l’interface graphique Linux avec Unity, il est peut-être temps de laisser derrière vous la série de scripts sujets aux erreurs et d’utiliser quelque chose qui est moins sujet aux erreurs et plus facile à utiliser. Les scripts doivent toujours être présents pour les shell bash, mais le bureau Unity peut être indépendant d'eux.

    
réponse donnée Dean Schulze 11.02.2014 - 18:34
la source
6

J'ai eu le même problème.

Le fichier eclipse.desktop suivant fonctionne dans Ubuntu 14.06 x64.

[Desktop Entry]
Encoding=UTF-8
Name=Eclipse
Comment=Eclipse IDE
Exec=/home/ivan/Eclipse/eclipse -vm /home/ivan/java/jdk1.7.0_25/bin/java
Icon=/home/ivan/Eclipse/icon.xpm
Categories=Application;Development;Java;IDE
Type=Application
Terminal=0

Je n'ai pas modifié le eclipse.ini

Une autre solution consiste à modifier le fichier eclipse.ini sans modifier votre eclipse.desktop

.

Mon eclipse.ini:

-startup
plugins/org.eclipse.equinox.launcher_1.3.0.v20130327-1440.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.200.v20140116-2212
-product
org.eclipse.epp.package.standard.product
--launcher.defaultAction
openFile
-showsplash
org.eclipse.platform
--launcher.XXMaxPermSize
256m
--launcher.defaultAction
openFile
-vm
/home/ivan/java/jdk1.7.0_25/bin/java
--launcher.appendVmargs
-vmargs
-Dosgi.requiredJavaVersion=1.6
-XX:MaxPermSize=256m
-Xms40m
-Xmx512m

L’option -vm et sa valeur (le chemin) doivent être sur des lignes séparées.

Plus d'infos: Wiki eclipse.ini

    
réponse donnée iv4z 28.04.2014 - 03:45
la source
1

J'ai une méthode très simple.

Ouvrez Gedit ou l'éditeur de texte. Ajouter:

[Desktop Entry]
Exec=/home/testrule/eclipse/eclipse
Icon=/home/testrule/eclipse/icon.xpm
Type=Application

Enregistrer dans le bureau sous la forme eclipse.desktop .

Cliquez avec le bouton droit sur le fichier eclipse.desktop & gt; cliquez sur propriétés & gt; Cliquez sur l'onglet Autorisations & gt; & gt; Cliquez sur la case à cocher de Execute

    
réponse donnée TestingRule 09.12.2016 - 13:14
la source
1

La sortie dit qu'elle a aussi cherché dans le PATH:

No Java virtual machine was found after searching the following locations:
...
java in your current PATH

Vous avez dit que vous pouvez lancer eclipse depuis un terminal: dans ce cas, je dirais que votre java est installé dans un répertoire non standard, qui est ajouté à votre PATH par un script de démarrage de terminal (bashrc, zshrc , etc.) mais il n'est pas ajouté à votre session lorsque vous vous connectez. Ainsi, lorsque vous êtes dans une session de terminal, votre PATH est différent de celui qui est utilisé lorsque le fichier .desktop est appelé.

Pour résoudre ce cas:

  • Pour voir où java est installé: which java
  • Vérifiez votre ~/.profile si le bon PATH avec le répertoire java y est défini. Si le chemin correct est défini uniquement dans .bashrc , .zshrc , etc., il est possible que ces scripts ne soient pas appelés lors de la connexion, de sorte que PATH n'est pas défini correctement. Aussi, si vous avez ~/.bash_profile ou ~/.bash_login , vous devez également les vérifier. Si vous fournissez ces fichiers, nous pourrons déterminer s’il s’agit de votre problème.

Si vous ne pouvez pas le résoudre de cette façon, vous pouvez toujours modifier le PATH directement dans le fichier .desktop avec env PATH= ...

    
réponse donnée falconer 09.02.2014 - 19:06
la source

Lire d'autres questions sur les étiquettes