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

11

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

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оба настроены правильно.

Lixu
источник
какую команду должен запустить лаунчер?
Тим
Вы проверили после выхода и входа снова. Иногда кэш значков единства обновляется после выхода из системы.
Рахул К Джа
Сделайте резервную копию ~/.configпапки cp ~/.config ~/.config-backupи удалите rm -rf ~/.configпапку. После этого сделайте перезагрузку.
Генерал
Могу я спросить, вы запускали bin/idea.shкак root с sudo? Потому что это создает .desktopфайл, принадлежащий пользователю root , и вы не можете перетащить его на панель запуска
Сергей Колодяжный,
Не @Serg нет я не
Lixu

Ответы:

13

На данный момент нет опции для автоматического закрепления .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файл должен иметь права на исполнение, в противном случае вы получите предупреждение «Ненадежное приложение»

Сергей Колодяжный
источник
Я изменил содержимое сгенерированного файла .desktop, как вы сказали, перетащил его в панель запуска, щелкнул по нему, ничего не произошло.
Ликсу
Пожалуйста, добавьте это: Вам нужно удалить эту папку: ~/.local/share/JetBrains/ чтобы снова открыть Мастер установки.
Гризотто
4

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

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

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

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

Lixu
источник
1

Давайте создадим и установим новый файл рабочего стола, 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

Marmayogi
источник
0

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

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

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

Вадим
источник
-1

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

  1. снова запустите ./idea.sh из терминала (например, когда вы устанавливаете, но не устанавливаете)
  2. затем откроется приложение, нажмите «настроить».
  3. нажмите создать запись на рабочем столе: D
Абдель-Рахман Эль-Ферали
источник