Lorsque je crée un fichier .desktop pour lancer eclipse (dernière version avec prise en charge de JDK 1.8), j'obtiens l'erreur suivante:
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 éclipse?
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 doublon . Mon problème est que mon CHEMIN vers le JDK est défini dans mon .bashrc.
Réponses:
J'ai eu le même problème.
Le prochain fichier eclipse.desktop fonctionne dans Ubuntu 14.06 x64.
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:
L'option -vm et sa valeur (le chemin d'accès) doivent se trouver sur des lignes distinctes.
Plus d'infos: Wiki eclipse.ini
la source
La sortie dit qu'elle a aussi recherché dans le CHEMIN:
Vous avez dit que vous pouvez lancer
eclipse
depuis un terminal: dans ce cas, je dirais que votrejava
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:
java
est installé:which java
~/.profile
si le CHEMIN correct avec lejava
répertoire y est défini. Si le chemin correct est uniquement défini dans.bashrc
,.zshrc
, etc. , alors il est possible que ces scripts ne sont pas invoquées lors de la connexion, de sorte que le PATH est pas correctement. Aussi si vous en avez~/.bash_profile
ou si vous devez les~/.bash_login
vérifier aussi. Si vous fournissez ces fichiers, nous pouvons vérifier si c'est votre problème.Si vous ne pouvez pas le résoudre de cette façon, vous pouvez toujours modifier le CHEMIN directement dans le fichier .desktop avec
env PATH= ...
la source
Exec=env PATH=/home/dean/bin/jdk1.8.0/bin:$PATH /home/dean/bin/eclipse-standard-luna-M5-linux-gtk-x86_64/eclipse/eclipse
Les documents pour le fichier .desktop n'étaient d'aucune aide.Exec=env PATH= ...
c'est ce que je voulais dire dans ma dernière ligne. Normalement, vous souhaitez configurer PATH dans .profile, pas .bashrc. Le fichier .profile est analysé par le shell de connexion afin de configurer correctement PATH lorsque vous vous connectez, et il n'y aura alors pas besoin de laenv
solution de contournement. Sur Debian / Ubuntu .profile sources .bashrc, donc cela ne devrait pas être un problème, mais peut-être que votre .profile ne le fait pas, alors vérifiez-le. Ou vous avez un fichier .bash_profile ou .bash_login qui remplace les paramètres .profile.J'ai copié le bloc suivant à partir de la
if [ -n "$BASH_VERSION" ]; then
déclaration:J'ai également essayé sans l'instruction if:
mais Eclipse échoue avec le même message d'erreur dans les deux cas. Apparemment, il
HOME
n'est pas défini lorsque lightdm s'exécute~/.profile
.Définir explicitement le chemin dans les
~/.profile
travaux, mais je veux garder mon CHEMIN et mes autres fonctionnalités Bash (alias, fonctions) dans le même fichier.La solution consiste à définir
PATH
laExec=env PATH=$PATH:...
ligne sur eclipse.desktop. Cependant, rien de ce que j'ai essayé ne fonctionne pour démarrer IntelliJ à partir d'une icône de bureau.Étant donné que vous réinventez l'expérience de l'interface graphique Linux avec Unity, il est peut-être temps de laisser la série de scripts sujette aux erreurs derrière et d'utiliser quelque chose qui est moins sujet aux erreurs et plus facile à utiliser. Les scripts devraient toujours être là pour les shells bash, mais le bureau Unity pourrait être indépendant d'eux.
la source
J'ai une méthode très simple.
Ouvrez Gedit ou l'éditeur de texte. Ajouter:
Enregistrer sur le bureau sous
eclipse.desktop
.Cliquez avec le
eclipse.desktop
bouton droit sur le fichier> cliquez sur les propriétés> cliquez sur l'onglet Autorisations >> Cochez la case Exécuterla source