Как мне создать файл .desktop для запуска eclipse?

Когда я создаю файл .desktop для запуска eclipse (последняя сборка с поддержкой JDK 1.8), я получаю следующую ошибку:

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

Почему он пытается найти JRE в каталоге, где находится eclipse двоичный файл?

Я могу запустить Eclipse из командной строки, и я могу закрепить его на панели запуска, и он работает. Почему файл .desktop так смущен тем, что он должен делать?

Вот мой файл .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;

У меня проблема не в том, что было задано в вопрос, связанный выше как дубликат . Моя проблема в том, что мой PATH для JDK установлен в моем .bashrc.

11
задан 13 April 2017 в 15:24

4 ответа

У меня была такая же проблема.

Следующий файл eclipse.desktop работает в 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

Я не модифицировал eclipse.ini

Другое решение - изменить файл eclipse.ini без изменения вашего eclipse.desktop

Мой 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

Опция -vm и ее значение (путь) должны быть в отдельных строках.

Дополнительная информация: Wiki eclipse.ini

0
ответ дан 13 April 2017 в 15:24

Вывод говорит, что он также искал в PATH:

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

Вы сказали, что можете запустить eclipse с терминала: В этом случае я бы сказал, что ваш java установлен на нестандартный каталог, который добавляется в PATH сценарием запуска терминала (bashrc, zshrc и т. д.), но не добавляется в сеанс при входе в систему. Поэтому, когда вы находитесь в терминальном сеансе, ваш PATH отличается от того, который используется при вызове файла .desktop.

Для устранения неполадок в этом случае:

  • Чтобы увидеть, где установлено java: which java
  • Проверьте ~/.profile, правильный ли путь PATH с помощью java каталог установлен в нем. Если правильный путь задан только в .bashrc, .zshrc и т. Д., То возможно, что эти сценарии не будут вызываться при входе в систему, поэтому PATH установлен неправильно. Также, если у вас есть ~/.bash_profile или ~/.bash_login, вы должны проверить их тоже. Если вы предоставите эти файлы, мы сможем разобраться, является ли это вашей проблемой.

Если вы не можете решить эту проблему таким образом, вы всегда можете изменить PATH непосредственно в файле .desktop с помощью env PATH= ...

0
ответ дан 13 April 2017 в 15:24

Я скопировал следующий блок из оператора if [ -n "$BASH_VERSION" ]; then:

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

Я также пробовал без оператора if:

. "$HOME/.bashrc"

, но Eclipse завершается неудачно с одно и то же сообщение об ошибке в обоих случаях. Очевидно, HOME не установлено, когда lightdm работает ~/.profile.

Явная установка пути в ~/.profile работает, но я хочу сохранить свой PATH и другие функции Bash (псевдонимы, функции) в одном файле.

Решение состоит в том, чтобы установить PATH в строке Exec=env PATH=$PATH:... в eclipse.desktop. Однако все, что я пробовал, не работает для запуска IntelliJ с иконки на рабочем столе.

Учитывая, что вы заново изобретаете интерфейс Linux с Unity, возможно, пришло время оставить ряд сценариев, подверженных ошибкам, и использовать что-то менее подверженное ошибкам и более простое в использовании. Для сценариев bash все еще должны присутствовать сценарии, но рабочий стол Unity может быть независимым от них.

0
ответ дан 13 April 2017 в 15:24

У меня очень простой метод.

Откройте Gedit или текстовый редактор. Добавить:

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

Сохранить на рабочем столе как eclipse.desktop.

Щелкните правой кнопкой мыши файл eclipse.desktop> щелкните свойства> щелкните вкладку Разрешения >> Установите флажок Выполнить

.
0
ответ дан 13 April 2017 в 15:24

Другие вопросы по тегам:

Похожие вопросы: