Cuando creo un archivo .desktop para iniciar eclipse (última compilación con soporte JDK 1.8) aparece el siguiente error:
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
¿Por qué intenta encontrar el JRE en el directorio donde está el binario eclipse?
Puedo iniciar Eclipse desde la línea de comandos, y puedo anclarlo al iniciador y funciona. ¿Por qué el archivo .desktop está tan confundido acerca de lo que se supone que debe hacer?
Aquí está mi archivo .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;
El problema que tengo no es lo que se hizo en la pregunta vinculada anteriormente como un duplicado . Mi problema es porque mi RUTA al JDK está configurada en mi .bashrc.
Respuestas:
Yo tuve el mismo problema.
El siguiente archivo eclipse.desktop funciona en Ubuntu 14.06 x64.
No modifiqué el eclipse.ini
Otra solución es modificar el archivo eclipse.ini sin modificar su eclipse.desktop
Mi eclipse.ini:
La opción -vm y su valor (la ruta) deben estar en líneas separadas.
Más información: Wiki eclipse.ini
fuente
La salida dice que también buscó en la RUTA:
Dijiste que puedes iniciar
eclipse
desde una terminal: en este caso, diría que tujava
está instalado en un directorio no estándar, que se agrega a tu RUTA mediante un script de inicio de terminal (bashrc, zshrc, etc.) pero no se agrega a su sesión cuando inicia sesión. Entonces, cuando está en una sesión de terminal, su RUTA es diferente de la que se usa cuando se invoca el archivo .desktop.Para solucionar este caso:
java
está instalado:which java
~/.profile
si la RUTA correcta con eljava
directorio está configurada. Si la ruta correcta sólo se encuentra en.bashrc
,.zshrc
, etc, entonces es posible que los scripts no se invocan en el inicio de sesión, por lo que el camino no está configurado correctamente. Además, si tienes~/.bash_profile
o~/.bash_login
tienes que comprobarlos también. Si proporciona estos archivos, podemos investigar si este es su problema.Si no puede resolverlo de esta manera, siempre puede modificar la RUTA directamente en el archivo .desktop con
env PATH= ...
fuente
Exec=env PATH=/home/dean/bin/jdk1.8.0/bin:$PATH /home/dean/bin/eclipse-standard-luna-M5-linux-gtk-x86_64/eclipse/eclipse
los documentos para el archivo .desktop no fueron de ayuda.Exec=env PATH= ...
eso es lo que quise decir en mi última línea. Normalmente le gustaría configurar PATH en .profile, no .bashrc. El archivo .profile es analizado por el shell de inicio de sesión, por lo que configurará PATH correctamente cuando inicie sesión, y luego no habrá necesidad de laenv
solución. En Debian / Ubuntu .profile fuentes .bashrc, así que esto no debería ser un problema, pero tal vez su .profile no lo esté haciendo, así que verifíquelo. O tiene un archivo .bash_profile o .bash_login que anula la configuración de .profile.Copié el siguiente bloque desde dentro de la
if [ -n "$BASH_VERSION" ]; then
declaración:También lo intenté sin la declaración if:
pero Eclipse falla con el mismo mensaje de error en ambos casos. Aparentemente
HOME
no está configurado cuando se ejecuta lightdm~/.profile
.Establecer explícitamente la ruta en
~/.profile
trabajos, pero quiero mantener mi RUTA y mis otras características Bash (alias, funciones) en el mismo archivo.La solución es establecer el
PATH
en laExec=env PATH=$PATH:...
línea en eclipse.desktop. Sin embargo, nada de lo que he probado funciona para iniciar IntelliJ desde un icono de escritorio.Dado que está reinventando la experiencia de la GUI de Linux con Unity, tal vez sea hora de dejar atrás la serie de scripts propensos a errores y usar algo que sea menos propenso a errores y más fácil de usar. Los scripts aún tendrían que estar allí para bash shells, pero el escritorio de Unity podría ser independiente de ellos.
fuente
Tengo un método muy simple.
Abra Gedit o Editor de texto. Añadir:
Guardar en el escritorio como
eclipse.desktop
.Haga clic derecho en el
eclipse.desktop
archivo> haga clic en propiedades> haga clic en la pestaña Permisos >> Haga clic en la casilla de verificación de Ejecutarfuente