16.04. IntelliJ IDEA Desktop Entry не работает

Я попытался запустить "Создать запись на рабочем столе" как из "Инструменты" в главном меню, так и "Настроить" с заставки. Это показывает

Desktop Entry Created
You may now exit IDEA and start it from the system menu (restart a session if a new entry seem not to appear).

но после закрытия IDEA (без ручной блокировки значка на панели запуска) значок также удаляется. Я удалил запись рабочего стола под~/.local/share/applications в соответствии с этой веткой введите описание ссылки здесь Тогда я попробовал chmod 777/usr/share/applications/jetbrains-idea.desktop и перетащил его в лаунчер, который все еще не работает. JAVA_HOME а также PATH оба настроены правильно.

5 ответов

Решение

Я наконец смог исправить это сам.

  1. Убедитесь, что JAVA_HOME правильно установлен в профиле вашей оболочки. Например, я использую Zsh, поэтому я должен добавить export JAVA_HOME=/..... в ~/.zshrc

  2. Если вы указали какой-либо JAR-файл для запуска как javaagent в idea.vmoptions, убедитесь, что указали его полное имя.

  3. Просто создайте файл.desktop из IDEA или вручную и укажите Exec Параметр на полный путь вашего idea.sh файл. Затем перетащите его на панель запуска. Работает отлично.

На данный момент нет опции для автоматического закрепления .desktop файл для запуска только что установленного приложения. Он включает в себя не только IntelliJ, но и многие другие приложения.

Технически говоря, есть способы добавить значок в список значков на панели запуска, однако большинство разработчиков не используют его и оставляют этот параметр на усмотрение пользователя. Следовательно, вы должны вручную прикрепить значок Launcher. В противном случае, как только программа выйдет из программы - значок исчезнет из программы запуска, что является правильным поведением любого приложения, которого нет в списке избранного программы запуска.

Для .desktop Сам файл - он создан.

Проверка только Create a desktop entry опция создает файл в ~/.local/share/applications/ папка, в которую обычно помещаются записи запуска для неизвестных или пользовательских приложений.

Чтобы подтвердить это, я запустил это после установки:

$ ls ~/.local/share/applications | grep idea
jetbrains-idea-ce.desktop

проверка For all users вариант создаст /usr/share/applications/jetbrains-idea-ce.desktop, так как /usr/share/applications Каталог доступен глобально для всех пользователей.

Любой из них - то, что вам нужно, и их можно закрепить на панели запуска, просто перетащив их из файлового менеджера или тире в панель запуска. ПРИМЕЧАНИЕ: bin/idea.sh должен запускаться от имени обычного пользователя - в противном случае, если вы запустите его от имени пользователя root, .desktop файл будет принадлежать пользователю root, поэтому вы не можете перетащить его на панель запуска. Если это так, вы всегда можете sudo chown $USER:$USER /path/to/jetbrains-idea-ce.desktop

Вы всегда можете скопировать любой из них на рабочий стол, если это то, что вы хотите, но .desktop файлы буквально не должны быть на рабочем столе.

В крайнем случае, вы всегда можете вручную создать .desktop файл.

В моем примере это было бы

[Desktop Entry]
Type=Application
Terminal=false
Exec=/bin/sh /home/xieerqi/intellij/idea-IC-145.597.3/bin/idea.sh
Name=Intellij
Icon=/home/xieerqi/intellij/idea-IC-145.597.3/bin/idea.png

Обратите внимание, что это отличается от примера в приведенной вами ссылке. #!/usr/bin/env xdg-open является ненужным и Exec линия на самом деле проходит /bin/sh и idea.sh в качестве параметра к нему. Обратите внимание, что это .desktop Файл должен иметь права на выполнение, в противном случае вы получите предупреждение "Ненадежное приложение"

Давайте создадим и установим новый файл рабочего стола idea.desktop который является shortcut файл для IntelliJ IDEA,

$ vi ~/idea.desktop

Введите следующее в файл ярлыка idea.desktop используя редактор:

[Desktop Entry]                                                                 
Encoding=UTF-8
Name=IntelliJ IDEA
Comment=IntelliJ IDEA
Exec=/opt/idea/bin/idea.sh
Icon=/opt/idea/bin/idea.png
Terminal=false
StartupNotify=true
Type=Application
StartupWMClass=IntelliJ IDEA

Теперь выполните следующую команду для установки idea.desktop файл в /usr/share/applications/ каталог:

$ sudo desktop-file-install idea.desktop

Никогда не копируйте файл ярлыка напрямую в каталог / usr / share / Applications /. Если в файле ярлыков есть какие-либо ошибки, такие как idea.desktop, кто их поймает? Вот почему мы устанавливаем, используя вышеупомянутую команду, а не команду cp. Команда desktop-file-install способна отлавливать ошибки!

Чтобы завершить этот ответ, давайте создадим symlink в /usr/local/bin каталог:

$ cd /usr/local/bin/
$ sudo ln -s /opt/idea/bin/

В качестве альтернативы, как IntelliJ IDEA исполняемый двоичный файл находится под /opt/idea/binмы также можем добавить его родительский каталог в наш $PATH так что мы можем запустить программу без указания абсолютного пути к двоичному файлу.

$ vi ~/.bashrc
export PATH="$PATH:/opt/idea/bin"

У меня были подобные проблемы с ярлыками при установке Netbeans 10.0, пожалуйста, обратитесь. После установки Netbeans 10.0 не будет запускаться с рабочего стола Ubuntu 18.04

Просто ты можешь:

  1. снова запустите./idea.sh из терминала (например, когда вы устанавливаете, но не устанавливаете)
  2. затем откроется приложение, нажмите "настроить".
  3. нажмите создать запись на рабочем столе:D

Может быть, я все равно слишком поздно. Идея 19.1 создает запись, которая находится в файле jetbrains-idea.desktop. когда я нажимаю на Launcher и пытаюсь найти с помощью ввода idea это не показ Однажды я сделал копию файла:

cp /usr/share/applications/jetbrains-idea.desktop /usr/share/applications/idea.desktop

это начало показывать.

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